Namespaces
Variants

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

From cppreference.net

size_type max_size ( ) const ;
(noexcept начиная с C++11)
(constexpr начиная с 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> 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

Смотрите также

возвращает количество элементов
(публичная функция-член)
возвращает количество элементов, которое может содержаться в выделенной в данный момент памяти
(публичная функция-член)