我对动态分配 3d 数组有点困惑。现在,我只是像这样分配一大块内存:
int height = 10;
int depth = 20;
int width = 5;
int* arr;
arr = new int[height * width * depth];
现在我想改变 3D 数组中的一个值,比如:
//arr[depth][width][height]
arr[6][3][7] = 4;
但是,我不能使用上面的代码来更改值。如何使用单个索引访问位置深度 = 6、宽度 = 3、高度 = 7 的元素?
arr[?] = 4;
有没有更好的方法来动态分配 3D 数组?