【发布时间】:2011-11-17 06:42:51
【问题描述】:
如何在 C++ 中释放这种类型的 3D 数组?我有一个具有 int*** 卷的类作为成员,我以这种方式填充它..
volume = new int**[xSize];
for(int i =0; i<xSize; i++)
{
volume[i] = new int*[ySize];
for(int j =0; j<ySize; j++)
{
volume[i][j] = new int[zSize];
for(int k = 0; k<zSize;k++)
{
volume[i][j][k] = 0;
}
}
}
【问题讨论】:
-
与你分配它的方式相同,for循环和
delete每个new你所做的。 -
@Als:
delete[]每个new[] -
@Benoit:啊,当然,
delete每个new,delete[]每个new[] -
我真的必须推荐vector
>>。或者一个 int* 的包装类,比如 boost::multi_array
标签: c++ pointers multidimensional-array