ema*_*udi 10 c++ unordered-map linkedhashmap
我有一个Java程序,我想将其转换为C++.因此,LinkedhashmapJava代码中使用了一种数据结构,我想将其转换为C++.LinkedHashmapC++中是否有等效的数据类型?
我尝试使用std::unordered_map它,但它不保持插入的顺序.
das*_*ght 17
C++不提供具有模仿Java的行为的集合模板LinkedHashMap<K,V>,因此您需要与映射分开维护顺序.
这可以通过将数据保存在a中来实现std::list<std::pair<K,V>>,并保留单独的std::unordered_map<k,std::list::iterator<std::pair<K,V>>>映射以便按键快速查找项目:
std::prev(list.end()).std::list<std::pair<K,V>>.