c++ - boost的多索引是否复制键对象

标签 c++ boost boost-multi-index

boost::multi_index 是否创建键对象的拷贝。这个问题进入我的脑海,因为 std::map 必须根据它的设计存储一个关键对象。然而 boost::multi_index 并没有明确要求 key ,而是从存储的对象中收集的。

另一个问题是,如果 boost::multi_index 确实创建了它的键的拷贝,是否有任何容器不创建它的键的拷贝以将占用空间保持在最低限度?

最佳答案

Boost.MultiIndex 不会将键与其关联的对象分开,而是依赖于所谓的 key extractors从对象本身检索信息,无需外部 key 存储。

关于c++ - boost的多索引是否复制键对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23922872/

相关文章:

c++ - 为什么我的虚拟函数未分配值?

c++ - Boost::Multiindex 与字符串索引 boost::unordered_map

c++ - 附加到内存映射文件

c++ - 使用 boost::tuple of references 作为 ordered_unique 索引的键来增加多索引插入错误

c++ - 测量 C++ 中函数调用的执行时间

c++ - PROCESSENTRY32 .dwSize 和 sizeof

c++ - 在 Microsoft Visual 2010 上安装 FLTK 1.3.2

c++ - 如何不优雅地关闭连接?

c++ - 我需要词法分析器来消除关键字歧义吗? ( boost::spirit )

c++ - 如何为具有共享指针的结构的多索引制作修饰符以 boost 记录器后端以重置此后端?