std::forward_list::max_size
De cppreference.com
size_type max_size() const noexcept;
|
(desde C++11) | |
Devuelve el número máximo de elementos que el contenedor es capaz de albergar debido a limitaciones del sistema o de la implementación de la biblioteca; es decir, std::distance(begin(), end()) para el contenedor más grande.
Parámetros
(Ninguno)
Valor de retorno
El número máximo de elementos.
Complejidad
Constante.
Notas
Este valor típicamente refleja el límite teórico del tamaño del contenedor, a lo sumo std::numeric_limits<difference_type>::max(). En tiempo de ejecución, el tamaño del contenedor puede estar limitado a un valor más pequeño que max_size() por la cantidad de RAM disponible.
Ejemplo
Ejecuta este código
#include <iostream>
#include <forward_list>
const char* separate(unsigned long long n)
{
static char buf[64];
int i{sizeof(buf) - 1}, j{};
buf[i] = '\0';
do {
buf[--i] = '0' + (n % 10);
if (j++ % 3 == 2)
buf[--i] = '\'';
} while (n /= 10);
return buf + i + (buf[i] == '\'' ? 1 : 0);
}
int main()
{
std::forward_list<char> s;
std::cout << "El tamaño máximo de un contenedor 'forward_list' es " << separate(s.max_size()) << "\n";
}
Posible salida:
El tamaño máximo de un contenedor 'forward_list' es 1'152'921'504'606'846'975