我天真地以为,二维数组动态分配嘛,就这样好了:
int **array;
array = new [height][width];
回收嘛:
delete [][] array;
结果就挂了TOT
根本就不识别[][]啊。
二维数组作为参数传递的时候,形式参数也是这个道理,不能是int [][],而应该是int [][width]。
好了下面是可行的动态分配,其实就迭代,从外向内每次一维地分配。
当然,回收是相反的,由内向外。
分配:
array = new int *[height];
for(i=0; i<height; ++i)
array[i] = new int [width];
回收:
for(i=0; i<height; ++i)
delete [] array[i];
delete [] array;