c – 使用一个值为std :: shared_ptr的map是一个很好的设计选择,有多个索引的类列表吗?

问题很简单:
我们有一个有成员a,b,c,d的班级……
我们希望能够通过提供a或b或c的当前值来快速搜索(key是一个成员的值)并用新值更新类列表…
我想过要一堆
的std ::地图< decltype(MyClass.a / * B,C,d * /),的shared_ptr< MyClass的>取代.

1)这是个好主意吗?

2)boost multi index在各方面都优于这个手工解决方案吗?

出于简单/性能原因,PS sql是不可能的.

解决方法

> Boost MultiIndex可能有一个明显的缺点,它会在集合的每次突变后尝试使所有指数保持最新.
如果您有一个包含许多单独写入的数据加载阶段,这可能会造成很大的性能损失.
> Boost Multi Index的使用模式可能不符合项目(成员)的编码风格(和品味……).这应该是一个小缺点,但我想我会提到它
>正如ildjarn所提到的,Boost MI尚不支持移动语义

否则,我认为Boost MultiIndex在大多数情况下都是优越的,因为你不太可能达到它收到的测试数量.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...