1. 程式人生 > >int* pInt = new int(5);和int* pInt = new int[5];

int* pInt = new int(5);和int* pInt = new int[5];

int *p = new int(5); 
這句是從堆上分配一個int型變數所佔的位元組記憶體,這個記憶體單元存放的整數值為5,然後讓一個整形的指標變數p指向它的地址。
釋放方式:delete p;
int *p = new int[5]; 
這句相當於從堆上分配一個含有5個元素的整形陣列所佔的位元組記憶體,然後讓一個整形的指標變數p指向它的首址。

釋放方式:delete []p;(注意這個[]不能掉了,如果掉了就會只釋放P[0]所佔的空間,p[1]到p[4]不會被釋放,產生記憶體洩露。)