命名空间
变体
操作

std::map<Key,T,Compare,Allocator>::max_size

来自 cppreference.cn
< cpp‎ | 容器‎ | map
 
 
 
 
size_type max_size() const;
(C++11 起无异常抛出)

返回容器因系统或库实现限制而能够容纳的最大元素数量,即最大容器的 std::distance(begin(), end())

目录

[编辑] 返回值

最大元素数量。

[编辑] 复杂度

常数时间。

[编辑] 注意

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

[编辑] 示例

#include <iostream>
#include <locale>
#include <map>
 
int main()
{
    std::map<char, char> p;
    std::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() = 461,168,601,842,738,790 = 0x666,666,666,666,666
q.max_size() = 384,307,168,202,282,325 = 0x555,555,555,555,555

另请参阅

返回元素数量
(public member function) [edit]