我有一张地图存储<int, char *>.现在我想按照它们插入的顺序检索元素.std::map返回按键排序的元素.它甚至可能吗?
如果您不关心基于int(IOW您只需要插入顺序而不关心正常密钥访问)的订单,只需将其更改为a vector<pair<int, char*>>,按照定义按插入顺序排序(假设您只插入到最后).
如果你想同时拥有两个索引,你需要,Boost.MultiIndex或者类似的东西.你可能需要保留一个单独的变量,它只能向上计数(将是一个稳定的计数器),因为.size()+1只有当你从未从地图中删除任何东西时,你才可以使用新的"插入时间键".
| 归档时间: |
|
| 查看次数: |
1447 次 |
| 最近记录: |