在C++中,動態二維數組一般通過指針數組來實現。要釋放動態二維數組占用的內存,需要按照以下步驟進行:
for(int i = 0; i < numRows; i++) {
delete[] array[i];
}
delete[] array;
其中,array
是指向動態二維數組的指針,numRows
是數組的行數。
完整的釋放內存的代碼示例如下:
int numRows = 5;
int numCols = 3;
int **array = new int*[numRows];
for(int i = 0; i < numRows; i++) {
array[i] = new int[numCols];
}
// 使用動態二維數組
// 釋放每一行的內存
for(int i = 0; i < numRows; i++) {
delete[] array[i];
}
// 釋放指針數組的內存
delete[] array;
注意,釋放內存后,務必將指針置為nullptr
,以避免懸空指針的問題:
array = nullptr;