當我用C++初始化一個變量不止一次時,內存位置會發生什麼變化?例如:當一個數組在C++中初始化多次時會發生什麼?
LPWSTR sampleString = new whcar_t[10];
//some operations here
sampleString = new wchar_t[2];
//some operations here
sampleString = new wchar_t[25];
//some operations here
如果我刪除使用delete [] sampleString;
內存將所有相關的存儲位置被清除?
如果您對中的每個'新[]'用'刪除[]',你應該罰款,並且如前所述,先下一'新[]'這樣做。一旦你再次使用'new []',舊的內存區域就會丟失,但是如果你不刪除[]',它仍然不是空閒的。 – chris 2012-07-13 06:56:52
@chris,還不夠。你應該配對它們,並且確保在每個'new'之後,在下一個'new'之前調用'delete'。 – littleadv 2012-07-13 06:57:59
@littleadv,哎呀,我的意思是,但它沒有太清楚。我把它修理了一下。 – chris 2012-07-13 06:58:42