为什么unordered_multimap没有lower_bound和upper_bound?

Adr*_*ire 0 c++ stl

从多图切换到unordered_multimap时,我意识到没有等效图:

  • lower_bound
  • upper_bound

显然equal_range可以很容易地做到这一点,但是我想知道是否遗漏了一些东西:做出这种选择的原因。

来自任何其他库,我都认为差异是一个简单的错误,但是STL在这方面通常是正交的。

Dan*_* M. 8

它的名字。无序 _multimap。没有顺序,因此没有上下关系。unordred_*甚至不需要存储在容器中的项目(键)来实现</ std::less,仅需要哈希和相等操作即可。