比方說,我有結構如何刪除內存?
struct Foo {
int whatever;
int whatever2;
...
};
而且我有這種類型的數組
Foo **array = new Foo*[128];
然後,每個指針我給你新的結構
for (int i = 0; i < 128; i++)
array[i] = new Foo;
然後,過了一段時間我釋放:
delete[] array;
內存將如何釋放?
- 只爲指針的空間將被釋放
- 空間指針+通過這些指針本身所指向的對象?
它是#1。只需使用'std :: vector'。 –
對於每個'new []',你都需要'delete []'。對於每個「新」,你需要一個「刪除」。 – juanchopanza