CyberPress.Sopron

(http://www.cyberpress.hu/)

Rovat: Dr. Bit

2001. június 18., hétfő 11:33


Programozzunk együtt!

A new és delete utasítás I.

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ó.