C++动态二维数组怎样释放内存

avatar
作者
猴君
阅读量:0

在C++中,动态二维数组一般通过指针数组来实现。要释放动态二维数组占用的内存,需要按照以下步骤进行:

  1. 首先释放每一行的内存:
for(int i = 0; i < numRows; i++) {     delete[] array[i]; } 
  1. 然后释放指针数组的内存:
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; 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!