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

655Z技术栈 C/C++编程 2025年06月30日 9

在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;

提供PHP及ThinkPHP框架的定制开发、代码优化,PHP修改、ThinkPHP修改。

邮箱:yvsm@163.com 微信:yvsm316 QQ:316430983
关闭

用微信“扫一扫”