在CPP中构建向量三元组的简单方法是什么?
,而不是一对2个整数,
std::vector<std::pair<int, int> > vec;
我希望将3个int绑在一起作为向量的一个元素。
我意识到一种方法是制作2个子嵌套对,但这种方法会变得混乱。我不知道CPP的所有细节,因此请推荐一种更简单的方法(如果有的话)。谢谢。
答案 0 :(得分:14)
std::vector<std::tuple<int,int,int>> myvec;
答案 1 :(得分:12)
无需过度工程。
struct Triplet
{
int one_, two_, three_;
};
vector<Triplet> triplets;
答案 2 :(得分:3)
查看提升元组http://www.boost.org/doc/libs/1_49_0/libs/tuple/doc/tuple_users_guide.html
您可以轻松创建对,三元组,四元组,最多n-uples!
答案 3 :(得分:-1)
在C ++ 11中,有std::array
,请参阅here。在C ++ 03中,我可能会定义一个3 int
s的结构并创建一个向量。