我创建了一个带有int数据类型的3d数组。但是我的需求现在更加强大,其中数组的每一层都可以是不同的数据类型。例如:layer1可以是int类型,也可以是float类型的第2层。任何帮助将不胜感激。
由于
答案 0 :(得分:2)
在我看来,您的数据结构已达到复杂程度,最好用正确封装的类或甚至多个嵌套类而不是多维数组来表示它。这些类的方法取决于您的实际要求,只能从您的帖子中猜到。
答案 1 :(得分:1)
听起来你想要的是一个二维元组阵列。假设您想要三个int
,float
和char
的图层。然后你会想要:
std::tuple<int, float, char> arr[X][Y];
然后前两个索引将为您提供“层”中的位置,最后一个是哪个层:
std::get<2>(arr[5][7])
答案 2 :(得分:0)
如果您想以简单的方式完成,只需定义一个符合您要求的结构。