Scroll to navigation

std::unordered_map::max_bucket_count(3) C++ Standard Libary std::unordered_map::max_bucket_count(3)

NAME

std::unordered_map::max_bucket_count - std::unordered_map::max_bucket_count

Synopsis


size_type max_bucket_count() const; (since C++11)


Returns the maximum number of buckets the container is able to hold due to system or
library implementation limitations.

Parameters


(none)

Return value


Maximum number of buckets.

Complexity


Constant.

Example

// Run this code


#include <iostream>
#include <unordered_map>


int main()
{
struct Ha { std::size_t operator()(long x) const { return std::hash<long>{}(x); }; };


auto c1 = std::unordered_map<char, long>{};
auto c2 = std::unordered_map<long, long>{};
auto c3 = std::unordered_map<long, long, std::hash<int>>{};
auto c4 = std::unordered_map<long, long, Ha>{};


std::cout
<< "Max bucket count of\n" << std::hex << std::showbase
<< "c1: " << c1.max_bucket_count() << '\n'
<< "c2: " << c2.max_bucket_count() << '\n'
<< "c3: " << c3.max_bucket_count() << '\n'
<< "c4: " << c4.max_bucket_count() << '\n'
;
}

Possible output:


Max bucket count of
c1: 0xfffffffffffffff
c2: 0xfffffffffffffff
c3: 0xfffffffffffffff
c4: 0xaaaaaaaaaaaaaaa

See also


bucket_count returns the number of buckets
(C++11) (public member function)

2022.07.31 http://cppreference.com