0
我有一个unordered_map:Unordered_map与载体的使用
std::tr1::unordered_map<unsigned int, vector<unsigned int> > duplicates;
ANAD我想插入:
duplicates.insert(make_pair(1, 2));
duplicates.insert(make_pair(1, 5));
duplicates.insert(make_pair(1, 6));
到载体,因为它们共享相同的密钥。我使用for循环来插入对。如果没有项目共享相同的密钥,我如何初始化矢量,并且这是我第一次在没有搜索整个unordered_map的情况下找到该密钥?
我不想首先使用find(获取vector,如果存在)然后插入。那可能吗?
嗯。是的,这听起来是一种解决方案你能举一个例子说明如何迭代一个键的多个结果?如果它可以使用std :: tr1 :: unordered_map duplicateates;因为我不再需要该载体了? –
glarkou
2013-03-16 00:51:45
'std :: tr1 :: unordered_multimap duplicateates;'应该可以工作。请查看[本页](http://www.cplusplus.com/reference/unordered_map/unordered_multimap/equal_range/),查看使用同一个键遍历所有值的示例。 –
2013-03-16 00:54:37
非常感谢!这应该工作。 – glarkou 2013-03-16 00:56:41