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