C ++:在多图中存储三个组

时间:2013-10-19 17:08:31

标签: c++ multimap

我想知道如何使用三个值组来实现多图。例如: [{a,b,c},{d,e,f}]

你必须使用std :: pair吗?

2 个答案:

答案 0 :(得分:3)

是。使用std :: pair是表示值{b,c}和{e,f}的合理方式 您可以使用键a,值{b,c}和键D,值{e,f}将每个值存储在多图中。

然后你可能有一个键值,值{z,y}。插入后,您可以找到键a,它将返回一个迭代器,您可以获取与键a相关的所有值。

如果你有元组,那么你可以考虑使用密钥a,使用元组{a,b,c}。

答案 1 :(得分:1)

如果你的意思是表示一组三个值的键,那么你可以使用std :: array作为键。

例如

std::multimap<std::array<int, 3>, std::string> m;