我需要一个关联容器,它可以让我通过字符串索引某个对象,但它也保持插入的顺序,所以我可以通过它的名称查找一个特定的对象,或者只是迭代它并以我插入的相同顺序检索对象他们。
我认为链表和哈希映射的这种混合应该可以完成这项工作,但在我尝试使用之前,我std::tr1::unordered_map
认为它以我描述的方式工作,但事实并非如此。那么有人可以解释一下的含义和行为unordered_map
吗?
@wesc:我确定 std::map 是由 STL 实现的,而我确定 std::hash_map 不在 STL 中(我认为旧版本的 Visual Studio 将它放在名为 stdext 的命名空间中)。
@cristopher:所以,如果我做对了,区别在于实现(以及性能),而不是它在外部的行为方式。