std::vector<T,Allocator>::push_back
(1) | ||
void push_back( const T& value ); |
(hasta C++20) | |
constexpr void push_back( const T& value ); |
(desde C++20) | |
(2) | ||
void push_back( T&& value ); |
(desde C++11) (hasta C++20) |
|
constexpr void push_back( T&& value ); |
(desde C++20) | |
Anexa el elemento dado value
al final del contenedor.
value
.value
se mueve dentro del nuevo elemento.Si el nuevo tamaño (size()) es mayor que la capacidad (capacity()), incluyendo el iterador después del final, entonces se invalidan todos los iteradores y las referencias. De lo contrario, solamente se invalida el iterador después del final.
Contenido |
[editar] Parámetros
value | - | El valor del elemento a anexar. |
Requisitos de tipo | ||
-T debe satisfacer los requisitos de CopyInsertable para poder usar la sobrecarga (1).
| ||
-T debe satisfacer los requisitos de MoveInsertable para poder usar la sobrecarga (2).
|
[editar] Valor de retorno
(Ninguno)
[editar] Complejidad
Constante amortizada.
[editar] Excepciones
Si se lanza una excepción (que puede ser debido a Allocator::allocate()
o al constructor de copia o movimiento o a la asignación del elemento), esta función no tiene efecto (garantía de excepción fuerte).
Si el constructor de movimiento de |
(desde C++11) |
Notas
Algunas implementaciones también lanzan std::length_error cuando push_back
ocasiona una reasignación de memoria que excedería max_size, debido a llamar implícitamente a un equivalente de reserve(size()+1).
[editar] Ejemplo
#include <vector> #include <iostream> #include <iomanip> int main() { std::vector<std::string> letras; letras.push_back("abc"); std::string s = "def"; letras.push_back(std::move(s)); std::cout << "vector alberga: "; for (auto&& i : letras) std::cout << std::quoted(i) << ' '; std::cout << "\nCadena fuente del movimiento alberga " << std::quoted(s) << '\n'; }
Salida:
vector alberga: "abc" "def" Cadena fuente del movimiento alberga ""
[editar] See also
(C++11) |
Construye un elemento en el sitio al final. (función miembro pública) |
Remueve el último elemento. (función miembro pública) |