是否可以从类中创建多维数组?
Is it possible to create multidimensional-arrays from classes?
假设您有类似于下面的代码:
#define maxX 80
#define maxZ 80
//Sector class
class Sect{
...
}
Sect sects[maxX][maxZ];
这会创建一个可信的二维教派数组吗?
它将创建一个二维的Sect
类数组,是的。我不确定你说的"貌似有理"是什么意思,所以我不能对此发表评论。
但考虑:
-
std::array
和std::vector
- 常量代替宏
可以。
这句话
Sect sects[maxX][maxZ];
创建一个包含Sect的二维数组,总大小(Sect元素的数目)为maxX * maxZ
。元素的有效索引将从sects[0][0]
到sects[maxX-1][maxZ-1]
。尝试访问索引超出这些范围的数据是无效的,并将导致未定义的行为。
相关文章:
- 在c++中为double类型的数组创建一个unique_ptr
- 如何从预定义的数组创建某些元素数组
- 基于数组的列表 - 动态数组创建时出错
- 从 UTF-8 字节数组创建字符串?
- 是否可以在并行区域中为共享 2D 数组创建选定元素的线程本地副本?(共享,私有,障碍:OPenMP)
- C++ 从名称数组创建对象
- 从数组创建 Mat 时,'cv::Mat' 和 'int' 类型不兼容
- 从 std::数组创建十六进制代表
- 在 C++ 结构内声明的数组 A[1] 创建多个实例
- 为多维数组创建内存空间
- 如何使用任何类型的数组创建模板类并为其设置值?
- 从字符串数组创建一个字符数组
- 是否可以在不为该数组创建变量的情况下将数组作为参数传递到函数中?
- 使用类定义数组创建C++类
- 使用具有唯一随机数的结构数组创建多个对象
- 谷歌测试:无法从字符数组创建字符串
- 从 1D 数组创建 2D 数组
- 无法通过一个单向链表数组创建邻接列表
- 如何使用数组创建标准::函数
- 在C++中,返回从本地字符数组创建的字符串是否会导致内存泄漏或未定义的行为