今天遇到了一个简单的问题,怎么建立动态的二维数组,如何函数传递二维数组;
需要先申请一个M个元素的一维指针空间,然后对每个一维指针上,申请N个元素的对象空间。这样就可以申请一个M行N列的二维数组空间了。
以整型为例
const int M = 10, N = 5;//10行5列。
int ** a;
a = new int *[M];
for(int i = 0; i < M; i ++)
a[i] = new int[N];
所得到的a就是10行5列的数组。
使用后需要释放,代码为
for(int i = 0; i < M; i ++)
delete [] a[i];
delete []a;