1

在开源项目中搜索(无提升),我在bimap 这里找到了一个类似 STL 的容器,其中实现了双向映射。并且multimap在标准 C++ 库中有。

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

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

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

4

2 回答 2

4

Boost.bimap允许您自定义两个值的集合类型;两者都可以是非唯一的。

于 2012-11-21T08:21:05.210 回答
2

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

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

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

于 2012-11-21T08:21:11.630 回答