[ Fiki035 @ 11.05.2013. 18:14 ] @
Kada imamo recimo funkciju
Code:

int f1(){
   char *niz = new char[10];
   if(x!=y){
     return 0;
   }

delete niz[];
return 1
}


e sada pitanje. Posto unistavam prostor na heap-u na koji ukazuje pokazivac niz na kraju funkcije, ali takodje iz funkcije pod odredjenim uslovima mogu da izadjem u tacki pre pozivanja instrukcije delete. Znaci gore u if-u. Moje pitanje da li ako se iz funkcije izadje u if-u prostor na koji ukazuje pokazivac niz nece biti dealociran?
[ X Files @ 11.05.2013. 19:18 ] @
Sad ili nikad, vreme je da pogledaš šta su: Smart Pointers, STL i RAII. Implementacija garancije da se nešto "čisti za sobom" (oslobađanje memorije, zatvaranje handle-ova, vraćanje kontrola u prvobitno stanje), ma šta se desilo u funkciji, jako je važan koncept u C++.

Ima dosta i na ES-u, npr kreni odavde:
http://www.elitesecurity.org/t389642


P.S.
Proveri u kodu koji si dao, da li je ovo OK: delete niz[];
[ Fiki035 @ 11.05.2013. 19:43 ] @
Citat:
X Files:
P.S.
Proveri u kodu koji si dao, da li je ovo OK: delete niz[];


Da, brzo sam kucao pa napravio omasku. Treba

Code:

delete [] niz;