c++中的三维向量



我想存储一个节点和集合子集的对象向量。所以我想实现一个三维向量,其中第一个维度的大小为#nodes = n,第二个维度的大小为2^|set| = m,最后一个维度的大小不应该是固定的,因为我想在程序中添加新的对象。

vector< vector < vector<Object>>> Vector3d( n , ( m, ( ( ???)))

我应该写什么来代替??

我试过在vector中使用数组,但是没有成功。

提前谢谢你

初始化方法为

vector< vector < vector<Object>>> Vector3d(n,vector<vector<Object>(m))

这将工作,因为它将初始化第一个维度的大小为n,这将包含nvector<vector<Object>(m)的no,这是默认值。现在第二次元的大小被定义为m,它没有初始值,因此你可以将任何向量附加到第二次元空间中。

vector<Object> v;
Vector3d[i][j].push_back(v);

其中I和j是前两个维度的索引

最新更新