std::vector<T,Allocator>::max_size
size_type max_size() const; | (до C++11) | |
size_type max_size() const noexcept; | (с C++11) (до C++20) | |
constexpr size_type max_size() const noexcept; | (с C++20) |
Возвращает максимальное количество элементов, которое контейнер может содержать из-за ограничений системы или реализации библиотеки, т.е. std::distance(begin(), end()) для самого большого контейнера.
Параметры
(нет)
Возвращаемое значение
Максимальное количество элементов.
Сложность
Постоянная.
Примечания
Это значение, как правило, отражает теоретическое ограничение на размер контейнера, не более std::numeric_limits<difference_type>::max(). Во время выполнения размер контейнера может быть ограничен значением, меньшим max_size(), из-за доступного объёма оперативной памяти.
Пример
#include <iostream>
#include <locale>
#include <vector>
int main()
{
std::vector<char> q;
std::cout.imbue(std::locale("en_US.UTF-8"));
std::cout << "Maximum size of a std::vector is " << q.max_size() << '\n';
}Возможный вывод:
Maximum size of a std::vector is 9,223,372,036,854,775,807
См. также
| возвращает количество элементов (общедоступная функция-член) |
|
| возвращает количество элементов, которое может быть размещено в текущем выделенном хранилище (общедоступная функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/container/vector/max_size