命名空间
变体
操作

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

来自 cppreference.com
< cpp‎ | container‎ | vector
 
 
 
 
size_type max_size() const;
(自 C++11 起为 noexcept)
(自 C++20 起为 constexpr)

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

内容

[编辑] 参数

(无)

[编辑] 返回值

最大元素数。

[编辑] 复杂度

常数。

[编辑] 注意事项

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

[编辑] 示例

#include <iostream>
#include <locale>
#include <vector>
 
int main()
{
    std::vector<char> p;
    std::vector<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() = 1,152,921,504,606,846,975 = 0xFFF,FFF,FFF,FFF,FFF

另请参阅

返回元素数
(公有成员函数) [编辑]
返回当前分配的存储区中可以容纳的元素数
(公有成员函数) [编辑]