我需要通過傳入值可能具有的任何鍵來訪問值的方法。 例如,可以通過他們的IP地址或名稱訪問的播放器對象?用C++中的多個鍵之一訪問相同的值?
舉例說明。
Player1 has ["a", "1.2.3.4"]
Player2 has ["b", "3.4.5.6"]
Player3 has ["c", "2.2.9.3"]
因此,訪問Player2我可以使用players["b"]
,或players["3.4.5.6"]
我應該遍歷該矢量?但是我打算有大約100個元素,所以樹狀容器比數組列表更好?
您可以使用std::multimap
嗎? 甚至在std::map
?
你可能需要的是['boost.bimap'](http://www.boost.org/doc/libs/1_60_0/libs/bimap/doc/html/index。 html) – 101010
你可以使用兩個'std :: map's通過相應的鍵具有相同的對象引用。每次你添加/刪除一個對象只需更新兩個地圖。 –
如何通過處理其中一個地圖來從兩個地圖中刪除參考? – Neuro