Boost
Libraries
arrow_drop_down
Boost.Unordered
M
D
Commits Per Release400400300300200200100100000000004020298109376171365198217575281.69.01.69.01.70.01.70.01.71.01.71.01.72.01.72.01.73.01.73.01.74.01.74.01.75.01.75.01.76.01.76.01.77.01.77.01.78.01.78.01.79.01.79.01.80.01.80.01.81.01.81.01.82.01.82.01.83.01.83.01.84.01.84.01.85.01.85.01.86.01.86.01.87.01.87.01.88.01.88.0

This Release

Daniel James
Daniel James
Author
Joaquin M. López Muñoz
Joaquin M. López Muñoz
Maintainer
Christian Mazakas
Christian Mazakas
Maintainer

Boost.Unordered

C++11 requiredBranch CI Drone status Build status codecov Deps Documentation Enter the Matrix
Branch CI Drone status Build status codecov Deps Documentation Enter the Matrix
BSL 1.0 Header-only library

Boost.Unordered offers a catalog of hash containers with different standards compliance levels, performances and intented usage scenarios:

boost::unordered_set boost::unordered_map boost::unordered_multiset boost::unordered_multimap

    Fully conformant implementations of std::unordered_[multi](set|map), but faster and up to the latest revisions of the standard even if you're working in an older version of C++ (heterogeneous lookup, try_emplace, contains, etc.)

boost::unordered_flat_set boost::unordered_flat_map

    The fastest of the lot. Based on open addressing, these containers slightly deviate from the standard in exchange for top performance.

boost::unordered_node_set boost::unordered_node_map

    Variations of boost::unordered_flat_(set|map) providing pointer stability.

boost::concurrent_flat_set boost::concurrent_flat_map

    High performance for multithreaded scenarios. Introducing a new non-standard, iterator-free API.

Learn about Boost.Unordered

Get the library

Boost.Unordered can be installed in a number of ways:

  • Download Boost and you're ready to go (this is a header-only library requiring no building).
  • Using Conan 2: In case you don't have it yet, add an entry for Boost in your conanfile.txt (the example requires at least Boost 1.83):
[requires]
boost/[>=1.83.0]
    If you're not using any compiled Boost library, the following will skip building altogether:
[options]
boost:header_only=True
  • Using vcpkg: Execute the command
vcpkg install boost-unordered

Support

Contribute