如何用 new 声明 C++ 中的二维数组?
动态 2D 数组基本上是一个指向数组的指针数组。因此,首先需要初始化指向指针的数组,然后在循环中初始化每个一维数组。
示例
#include<iostream> using namespace std; int main() { int rows = 3, cols = 4; int** arr = new int*[rows]; for(int i = 0; i < rows; ++i) arr[i] = new int[cols]; return 0; }
这将创建一个大小为 3x4 的二维数组。在这些情况下要非常小心地清理内存,因为你需要按分配它的方式释放内存,但顺序相反,即你需要首先删除一维数组,然后再删除指针数组。
广告