我想创建一个向量,并且在这个向量的每个单元格中,我想保留另一个将包含我定义的特定结构的向量。我该怎么做? 我是否应该定义一个从主矢量中的每个单元格到其他每个矢量(包含我定义的结构体)的指针?我应该访问使用指针创建向量的内存吗?如何在C++中定义矢量矢量?
这是我怎么想这样做,但我诚实真的不知道我在做什么:
vector<*vector> *vec = new vector<vector>
注:我在C++初学者和新的总体规划这样下去容易在我身上在这一个家伙。
非常感谢
我想创建一个向量,并且在这个向量的每个单元格中,我想保留另一个将包含我定义的特定结构的向量。我该怎么做? 我是否应该定义一个从主矢量中的每个单元格到其他每个矢量(包含我定义的结构体)的指针?我应该访问使用指针创建向量的内存吗?如何在C++中定义矢量矢量?
这是我怎么想这样做,但我诚实真的不知道我在做什么:
vector<*vector> *vec = new vector<vector>
注:我在C++初学者和新的总体规划这样下去容易在我身上在这一个家伙。
非常感谢
一般的规则是,除非你需要不使用指针(动态分配)。所以,你可以简单地这样做:
std::vector<std::vector<your_struct> > vector_of_vectors;
非常感谢大家! –
就像你会实例的任何一个向量:
std::vector<std::vector<MyType>> v;
指针有什么用它做。当且仅当您需要一个指针向量时,才使用指针向量。
你不需要指针,你可以只使用
std::vector<std::vector<int>> vec(100); // create a vector of 100 vector<int>
vec[42].push_back(1764); // add an element to the 43rd vector<int>
你如何定义'的std ::矢量<'的*什么*在C++>?从那开始。现在递归...一次。 – WhozCraig
我觉得很难相信这不是重复的东西。 – Duck