【发布时间】:2018-11-27 15:51:01
【问题描述】:
我有三个结构(Foo、Bar、Fruit),我想要一个向量来保存每个结构,例如vector<Foo> Foo_holder; vector<Bar> Bar_holder; vector<Fruit> Fruit holder;,然后我想尝试将所有这三个向量放入一个向量中。所以它应该像这样结束,Vector_holder 是我想知道如何创建的顶级向量:
Vector_holder
--- Foo_Holder
------Instance of Foo
--- Bar_holder
------Instance of Bar
--- Fruit_holder
------Instance of Fruit
我该怎么做?
可能的重复问题列出了向量必须相同大小或代码中断的问题,并且我的问题中的向量的大小会发生很大变化。我也觉得这比其他问题更能帮助初学者 C++ 学习者。 我在这里找到的解决方案对我有用,并且总体上比几乎论文长的答案要简单得多。我更像是 C++ 的初学者,因此很欣赏这里更容易理解的答案。
【问题讨论】:
-
你的意思是
std::tuple? -
问题无法按要求解决。有多种技术可能适合 OP,但为了提出这些建议,我需要更多关于实际所需行为的信息。
-
为什么不用
std::tuple来存储三种不同类型的向量呢? -
我没有考虑元组。我应该阅读它们,谢谢!
-
所以我会做
std::tuple<Foo_holder,Bar_holder,Fruit_holder> Vector_holder;?