我有一些C++代码,我使用"vector"使用以下方法声明2D数组:
std::vector<std::vector<double>> Array2D(X, std::vector<double>Y);
Run Code Online (Sandbox Code Playgroud)
其中X和Y是数组的尺寸.
这非常适合我需要实现的目标.但是,我想看一下3D,XYZ阵列使用相同的方法.我假设我开始:
std::vector<std::vector<std::vector<double>>>
Run Code Online (Sandbox Code Playgroud)
但是如何声明尺寸,即Array3D(X,?????)
有一个填充向量构造函数,它构造一个包含n个元素的容器,每个元素都是提供的值的副本.
std::vector<std::vector<std::vector<double>>> Array3D(X, std::vector<std::vector<double>>(Y, std::vector<double>(Z)));
Run Code Online (Sandbox Code Playgroud)
将通过Z向量创建X. 您可能希望使用typedef此类型.