Namespaces
Variants

std::hive<T,Allocator>::max_size

ja.cppreference.net から

 
 
 
 
size_type max_size() const noexcept;
(C++26 以上)

システムまたはライブラリ実装の制限によりコンテナが保持できる最大要素数を返します。すなわち、std::distance(begin(), end()) は最大のコンテナに対するものです。

戻り値

最大要素数。

計算量

定数時間。

注意点

この値は通常、コンテナのサイズの理論上の上限を反映しており、最大で std::numeric_limits<difference_type>::max() です。実行時には、利用可能な RAM の量によって、コンテナのサイズが max_size() より小さな値に制限される場合があります。

例

#include <iostream>
#include <locale>
#include <hive>

int main()
{
    std::hive<char> p;
    std::hive<long> q;

    std::cout.imbue(std::locale("en_US.UTF-8"));
    std::cout << std::uppercase
              << "p.max_size() = " << std::dec << p.max_size() << " = 0x"
              << std::hex << p.max_size() << '\n'
              << "q.max_size() = " << std::dec << q.max_size() << " = 0x"
              << std::hex << q.max_size() << '\n';
}

出力例:

p.max_size() = 9,223,372,036,854,775,807 = 0x7,FFF,FFF,FFF,FFF,FFF
q.max_size() = 2,305,843,009,213,693,951 = 0x1,FFF,FFF,FFF,FFF,FFF

関連項目

要素数を返します
(パブリックメンバ関数)
現在確保されている記憶域に保持できる要素数を返します
(パブリックメンバ関数)