4

在 CPP 中构造整数向量三元组的简单方法是什么?

即,而不是一对 2 ints ,

std::vector<std::pair<int, int> > vec;

我希望将 3 个 int 捆绑在一起作为向量的一个元素。

我意识到一种方法是制作 2 个子嵌套对,但这种方法会变得混乱。我不了解 CPP 的所有细节,因此请推荐一种更简单的方法(如果有)。谢谢你。

4

4 回答 4

14

std::vector<std::tuple<int,int,int>> myvec;

于 2012-05-10T20:53:29.797 回答
12

无需过度设计。

struct Triplet
{
  int  one_, two_, three_;
};

vector<Triplet> triplets;
于 2012-05-10T20:53:13.180 回答
3

查看提升元组http://www.boost.org/doc/libs/1_49_0/libs/tuple/doc/tuple_users_guide.html

您可以轻松创建对、三重、四重、最多 n 个!

于 2012-05-10T20:53:34.180 回答
-1

在 C++11 中,有std::array,请参见此处。在 C++03 中,我可能会定义一个 3 ints 的结构并制作一个向量。

于 2012-05-10T20:53:57.193 回答