是否有其他容器具有与 std::map 相同的功能,但它不会自动对内容进行排序?由于 std::map 是一个“有序”容器。
当我向 std::map 栏添加东西时,我遇到了一个问题;字符串列表会自动按字母顺序排序。
我程序中的其他所有内容都可以正常工作。
我想知道是否有一个容器具有与 std::map 完全相同的功能但没有排序.. 所以我可以进行搜索并将 std::map 替换为 ???:??
有这样的吗?
在此先感谢--Jynks
是否有其他容器具有与 std::map 相同的功能,但它不会自动对内容进行排序?由于 std::map 是一个“有序”容器。
当我向 std::map 栏添加东西时,我遇到了一个问题;字符串列表会自动按字母顺序排序。
我程序中的其他所有内容都可以正常工作。
我想知道是否有一个容器具有与 std::map 完全相同的功能但没有排序.. 所以我可以进行搜索并将 std::map 替换为 ???:??
有这样的吗?
在此先感谢--Jynks
std::unordered_map
从 C++11 开始有一个可用的容器。许多尚未完全兼容 C++11 的编译器也支持它。此容器不会按字母顺序排列您的项目,但作为关联容器,它不需要保留项目的插入(或任何其他)顺序。
如果您想保留容器中项目的某种顺序并使其作为关联容器(即映射)工作,您可以将自己的容器构建为链表和未排序映射的组合,类似于 Java 的LinkedHashMap
.