C ++类似STL的双向多重映射

时间:2012-11-21 08:13:13

标签: c++ stl

在开源项目中搜索(no-boost),我发现了一个类似STL的容器bimap here,它实现了双向映射。标准C ++库中有multimap

  • 但我想知道,是否有任何努力实施“类STL” 双向Multimap“?
  • 或者,我们如何组合现有容器来制作数据 结构

注意:一个简单的解决方案是以双向方式使用两个multimap。但它的表现并不好。因为,对于每个insert / remove / find操作,我们应该执行两次。此外,它分配更多内存。

注意二:boost.bimap是来自HostileFork和KerrekSB的好建议,如果没有办法,我会使用它。但在此之前,我需要找到一个非增强和小尺寸类库。

2 个答案:

答案 0 :(得分:4)

Boost.bimap可让您自定义两个值的集合类型;两者都可以是非独特的。

答案 1 :(得分:2)

为什么在boost中出现bimap时会使用随机的“CodeProject”代码?

http://www.boost.org/doc/libs/1_42_0/libs/bimap/doc/html/index.html

Boost代码试图接近标准库的可接受方法,并且有一个审查过程,最终事情被接受。也许在下一个标准中,谁知道?