Boost 多索引容器库提供了一个名为 multi_index_container
的类模板,它可以构建维护一个或多个具有不同排序和访问语义的*索引*的容器。索引提供的接口类似于 STL 容器的接口,使其使用起来更加熟悉。在同一元素集合上进行多索引的概念借鉴了关系数据库术语,并允许按照多索引关系表的精神指定复杂的数据结构,而简单的集合和映射是不够的。Boost.MultiIndex 提供了多种索引选择,其模型类似于 std::set
、std::list
和 std::unordered_set
等 STL 容器。
Boost.MultiIndex 还具有其他功能,例如子对象搜索、范围查询、元素的原地更新和等级计算,即使不需要多索引功能,它也可以方便地替代 std::set
和 std::multiset
。
Boost.MultiIndex 的多功能性允许指定各种不同的数据结构。以下是文档中开发的可能的用例示例
修订于 2015 年 4 月 19 日
© 版权所有 2003-2015 Joaquín M López Muñoz。根据 Boost 软件许可证,版本 1.0 分发。(请参阅随附文件 LICENSE_1_0.txt 或复制于 https://boost.ac.cn/LICENSE_1_0.txt)