/
Forside
/
Teknologi
/
Udvikling
/
C/C++
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
C/C++
#
Navn
Point
1
BertelBra..
2425
2
pmbruun
695
3
Master_of..
501
4
jdjespers..
500
5
kyllekylle
500
6
Bech_bb
500
7
scootergr..
300
8
gibson
300
9
molokyle
287
10
strarup
270
new [] delete [] vs primitive typer
Fra :
Morten Krogh Lorentz~
Dato :
29-08-02 08:40
I have a doubt...
Hvis man allokerer en buffer ved brug af new [] operatoren på en primitiv
type f.eks. char:
char* buffer = new char[50];
skal denne buffer også nedlægges med delete [] operatoren
delete [] buffer;
Eller skal den nedlægges med delete:
delete buffer;
???
Mvh
Morten
Martin Dyring (
29-08-2002
)
Kommentar
Fra :
Martin Dyring
Dato :
29-08-02 09:16
"Morten Krogh Lorentzen" <spam@nothanks.no> wrote in message
news:akkj43$jn1$1@sunsite.dk...
> skal denne buffer også nedlægges med delete [] operatoren
> [...]
> Eller skal den nedlægges med delete:
Du skal bruge delete [] (i visse tilfælde har en almindelig delete samme
effekt, men det gør det ikke mere rigtigt :).
--
Mvh,
Martin Dyring
Mogens Hansen (
29-08-2002
)
Kommentar
Fra :
Mogens Hansen
Dato :
29-08-02 15:47
"Morten Krogh Lorentzen" <spam@nothanks.no> wrote in message
news:<akkj43$jn1$1@sunsite.dk>...
[8<8<8<]
> skal denne buffer også nedlægges med delete [] operatoren
>
> delete [] buffer;
Ja!
>
> Eller skal den nedlægges med delete:
>
> delete buffer;
Nej.
Undefined behaviour!
Hvorfor ikke:
std::vector<char> buffer(50);
?
Det giver normalt ingen ulemper, kun fordele (du kan ikke glemme at skrive
delete).
Hvis du skal give bufferen til et C API, der forventer en "char*" så skriv:
some_c_api_func(&buffer[0]);
Det er iøvrigt ligegyldigt i den forbindelse om det er primitive type eller
ej.
Venlig hilsen
Mogens Hansen
Søg
Alle emner
Teknologi
Udvikling
C/C++
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177558
Tips :
31968
Nyheder :
719565
Indlæg :
6408924
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.