new, delete kullanimi
void
F(int i)
{
int a[10];
int *b = new int[10]; // a ya esdegerlik icin const int *b diye tanimlamak daha dogru
// fonksiyondan geri douldugunde a dizisi icin atanan yer sisteme geri verilecek
// b isaretcisinin kapladigi alan da geri verilecek
// Ama b'nin isaret ettigi 10 int alan acikta kalacak --> leak
delete [] b; // Bu bellek problemini cozecek, iade edecek
}
F(int i)
{
int a[10];
int *b = new int[10]; // a ya esdegerlik icin const int *b diye tanimlamak daha dogru
// fonksiyondan geri douldugunde a dizisi icin atanan yer sisteme geri verilecek
// b isaretcisinin kapladigi alan da geri verilecek
// Ama b'nin isaret ettigi 10 int alan acikta kalacak --> leak
delete [] b; // Bu bellek problemini cozecek, iade edecek
}
Etiketler: CPP
Toplam 0 Yorum:
Yorum Gönder
<< Ana Sayfa