3维数组的下标有严格定义吗

3维数组的下标有严格定义吗

假设我声明:

int [a][b][c];

a 代表级别/页面,b 代表行,c 代表列吗?

或者它可以是我想要的任何东西,即 a 代表列,b 代表页,c 代表行(因为数据只是数据,立方体可以以任何方式抽象)?

最佳答案

任何您想要的任何顺序,行和列的名称只是约定。内存中的布局在C++中会是http://en.wikipedia.org/wiki/Row-major_order,那部分不能改变。

在许多情况下,您如何遍历元素会对性能产生影响。您想更改最内层循环中最右侧的索引以按顺序在内存中移动。

关于c++ - 3维数组的下标有严格定义吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2391104/

10-11 18:30