std::vector<T,Allocator>::max_size
来自 cppreference.cn
size_type max_size() const; |
(C++11 起无异常抛出) (C++20 起为 constexpr) |
|
返回容器能够容纳的最大元素数量,受系统或库实现限制,即最大容器的 std::distance(begin(), end())。
目录 |
[编辑] 返回值
最大元素数量。
[编辑] 复杂度
常数时间。
[编辑] 注意
此值通常反映容器大小的理论限制,最多为 std::numeric_limits<difference_type>::max()。在运行时,容器的大小可能会因可用RAM的数量而限制为小于 max_size()
的值。
[编辑] 示例
运行此代码
#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
另请参阅
返回元素数量 (public member function) | |
返回当前已分配存储空间中可容纳的元素数量 (public member function) |