Namespaces
Variants

std::unordered_multiset<Key,Hash,KeyEqual,Allocator>:: max_bucket_count

From cppreference.net

size_type max_bucket_count ( ) const ;
(C++11以降)

コンテナがシステムまたはライブラリ実装の制限により保持可能な最大バケット数を返します。

目次

パラメータ

(なし)

戻り値

バケットの最大数。

計算量

定数。

#include <iostream>
#include <unordered_set>
int main()
{
    struct Ha { std::size_t operator()(long x) const { return std::hash<long>{}(x); }; };
    auto c1 = std::unordered_multiset<char>{};
    auto c2 = std::unordered_multiset<long>{};
    auto c3 = std::unordered_multiset<long, std::hash<int>>{};
    auto c4 = std::unordered_multiset<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'
        ;
}

出力例:

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

関連項目

バケット数を返す
(public member function)