(C++17) | ||||
Sequence | ||||
(C++11) | ||||
(C++26) | ||||
(C++26) | ||||
(C++11) | ||||
Associative | ||||
Unordered associative | ||||
(C++11) | ||||
(C++11) | ||||
(C++11) | ||||
(C++11) | ||||
Adaptors | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
Views | ||||
(C++20) | ||||
(C++23) | ||||
Tables | ||||
Iterator invalidation | ||||
Member function table | ||||
Non-member function table |
Member functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Non-member functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Deduction guides(C++17) |
size_type max_size()constnoexcept; | (since C++11) (constexpr since C++26) | |
Returns the maximum number of elements the container is able to hold due to system or library implementation limitations, i.e.std::distance(begin(), end()) for the largest container.
Contents |
Maximum number of elements.
Constant.
This value typically reflects the theoretical limit on the size of the container, at moststd::numeric_limits<difference_type>::max(). At runtime, the size of the container may be limited to a value smaller thanmax_size()
by the amount of RAM available.
#include <iostream>#include <locale>#include <forward_list> int main(){std::forward_list<char> p;std::forward_list<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';}
Possible output:
p.max_size() = 1,152,921,504,606,846,975 = 0xFFF,FFF,FFF,FFF,FFFq.max_size() = 1,152,921,504,606,846,975 = 0xFFF,FFF,FFF,FFF,FFF