std::unordered_map<Key,T,Hash,KeyEqual,Allocator>::max_size

来自cppreference.com
 
 
 
 
size_type max_size()constnoexcept;
(C++11 起)
(C++26 起为 constexpr)

返回容器根据系统或库实现限制而可保有的元素最大数量,即对于最大容器的 std::distance(begin(), end())

目录

[编辑]返回值

元素数量的最大值。

[编辑]复杂度

常数。

[编辑]注解

此值通常反映容器大小上的理论极限,至多为 std::numeric_limits<difference_type>::max()。运行时,可用 RAM 总量可能会限制容器大小到小于 max_size() 的值。

[编辑]示例

#include <iostream>#include <locale>#include <unordered_map>   int main(){std::unordered_map<char, char> p;std::unordered_map<long, char> 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() = 1,152,921,504,606,846,975 = 0xFFF,FFF,FFF,FFF,FFF q.max_size() = 768,614,336,404,564,650 = 0xAAA,AAA,AAA,AAA,AAA

参阅

返回元素数
(公开成员函数)[编辑]
close