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.
Sumario
Parámetros
| new_cap | - | Lanueva capacidad de inplace_vector, en número de elementos.
|
Valor de retorno
(Ninguno)
Complejidad
Constante.
Excepciones
std::bad_alloc si new_cap > capacity() es true.
Notas
Esta función existe por compatibilidad con interfaces de tipo vector.
Ejemplo
Ejecuta este código
#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
Véase también
(C++26) |
Devuelve el número de elementos. (función miembro pública) |
(C++26) |
Devuelve el número máximo posible de elementos. (función miembro pública) |
(C++26) |
Cambia el número de elementos almacenados. (función miembro pública) |
| Devuelve el número de elementos que se pueden almacenar en el almacenamiento asignado actualmente. (función miembro pública) | |
(C++11) |
Reduce el uso de memoria liberando memoria no utilizada. (función miembro pública) |