动态2D数组基本上是指向数组的指针的数组。因此,您首先需要初始化指向指针的指针数组,然后在循环中初始化每个1d数组。
#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的2D数组。在这种情况下,清除内存的方法有所不同,因为您需要以与分配内存相同的方式删除内存,但是顺序相反,也就是说,您需要先删除1D数组,然后再删除指针数组。