Espacios de nombres
Variantes
Acciones

std::inplace_vector<T,N>::reserve

De cppreference.com
 
 
 
 
static constexpr void reserve( size_type new_cap );
(desde C++26)

No hace nada, excepto que puede generar std::bad_alloc. La solicitud para aumentar la capacidad (es decir, el tamaño de almacenamiento interno) se ignora porque std::inplace_vector<T, N> es un contenedor de capacidad fija.

Contenido

[editar] Parámetros

new_cap - Lanueva capacidad de inplace_vector, en número de elementos.

[editar] Valor de retorno

(Ninguno)

[editar] Complejidad

Constante.

[editar] Excepciones

std::bad_alloc si new_cap > capacity() es true.

[editar] Notas

Esta función existe por compatibilidad con interfaces de tipo vector.

[editar] Ejemplo

#include <cassert>
#include <inplace_vector>
#include <iostream>
 
int main()
{
    std::inplace_vector<int, 4> v{1, 2, 3};
    assert(v.capacity() == 4 && v.size() == 3);
 
    v.reserve(2); // no hace nada
    assert(v.capacity() == 4 && v.size() == 3);
 
    try
    {
        v.reserve(13); // lanza, ya que la capacidad requerida es > N; 
                       // v se deja sin cambios
    }
    catch(const std::bad_alloc& ex)
    {
        std::cout << ex.what() << '\n';
    }
    assert(v.capacity() == 4 && v.size() == 3);
}

Posible salida:

std::bad_alloc

[editar] Véase también

Devuelve el número de elementos.
(función miembro pública) [editar]
Devuelve el número máximo posible de elementos.
(función miembro pública) [editar]
Cambia el número de elementos almacenados.
(función miembro pública) [editar]
Devuelve el número de elementos que se pueden almacenar en el almacenamiento asignado actualmente.
(función miembro pública) [editar]
Reduce el uso de memoria liberando memoria no utilizada.
(función miembro pública) [editar]