c++ - 是否允许将 unordered_map 转换到 map 上?

标签 c++ boost dictionary

正如标题所说,允许吗?如果不是,它们是否共享相同的接口(interface)或抽象类?我没有从在线文档中找到任何引用。但看起来 unordered_map 和 map 使用的是相同的函数。

最佳答案

不,它们完全不同,即使您使用 reinterpret_cast 强制执行它,它也会在运行时出现可怕的错误(即可怕的未定义行为)。

它们都是 STL 容器,因此故意具有一致的接口(interface)。 这并不意味着它们在内部是同一回事。

关于c++ - 是否允许将 unordered_map 转换到 map 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7982761/

相关文章:

c++ - 原始类型的 emplace_back 与 push_back

c++ - 创建一个具有默认构造函数的未初始化项目数组?

python - 为什么 python 的 pickle 没有将方法序列化为默认参数?

用于解析 YML 文件的 Python 库 - 问题

java - 检查 EmptyOrNull 以获取未知数量的集合和 map

c++ - 如何使用 MFC 获取单独窗口的句柄?

c++ - 集合类型 : How to store a list of bool, 字符串?

c++ - 帮助理解 boost::bind 占位符参数

c++ - 尝试安装 boost 库,但不起作用?

c - GNU ld 不能与 libboost 静态链接,但可以动态链接