Programozzunk együtt!
A new és delete
utasítás I.
A new-t
C++-ban használhatjuk a memória dinamikus lefoglalására.
Felmerülhet a kérdés, hogy ez most mire jó, hiszen ott van
nekünk a régi, jól ismert malloc is. Bár használhatjuk ezt
is, de én semmiképpen sem javasolom. A new-val is mindent
meg
lehet oldani, amit a malloc-kal, valamint a C++-ban használt objektumok (osztályok
= classes) dinamikus használatában is ezt alkalmazzuk: A
*; // Mutato -re
nev=new ; // Memoria lefoglalas
sorok hatására sizeof(tipus) byte memória foglalódik (allokálódik) le számunkra.
Szóval, nézd meg a példát: A new-val a következőképpen
foglaltam le 1024 byte (=1Kbyte) memóriát:
// DMEMPL1.CPP - Dinamikus
memoria-fogalas pelda
#include
void main(void)
{
int meret=1024;
char *tomb;
if((tomb=::new char[meret])==0)
{
cerr<<"Hiba";
}
else
{
cout<
}
delete tomb;
}
Nos, a példán átrágva magatokat észrevehettétek a delete
utasítást: Ez a new-val lefoglalt memóriablokkot szabadítja fel. Hát
mostanra ennyit, a következőkben a dinamikus objektumok
kezelésről lesz szó.
2001. június 18., hétfő 11:33