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
関連項目
| 要素数を返します (パブリックメンバ関数) | |
| 現在確保されている記憶域に保持できる要素数を返します (パブリックメンバ関数) |