用于分组和管理许多不同内存索引的解决方案

时间:2011-06-24 21:42:07

标签: c++ design-patterns indexing grouping

我有一个Person对象列表,目前我使用5个不同的关联结构实例(std :: map / multimap,std :: unordered_map)来为各种静态结果提供有效的查询,例如:所有人都在年龄范围20-40岁,或所有名字约翰等人。

随着Person结构的发展,我发现我必须处理手动添加新类型的索引,找出它应该是什么样的正确结构等等,简而言之,它变得非常难以管理。

将来似乎查询会变得越来越复杂。 - 我们采用DB / SQL方法,对于我们的需求来说简单太慢,目前解决方案速度已经足够快,但从软件工程的角度来看,它变得非常难以管理。

我的问题是,是否有任何库或解决方案以可管理的方式为对象列表提供集合索引(内存中)?

1 个答案:

答案 0 :(得分:2)

Boost.Multi-Index会有帮助吗?