Namespaces
Variants

std::list<T,Allocator>::push_back

De es.cppreference.net

 
 
 
 
void push_back( const T& value );
(1)
void push_back( T&& value );
(2) (desde C++11)

Agrega el elemento dado value al final del contenedor.

1) El nuevo elemento se inicializa como una copia de value.
2) value se mueve al nuevo elemento.

No se invalidan iteradores ni referencias.

Parámetros

value - el valor del elemento a añadir

Requisitos de tipo
-
Si se cumple la siguiente condición, el comportamiento es indefinido:
1) T no es CopyInsertable en list .
2) T no es MoveInsertable en list .
(desde C++11)

Valor de retorno

(ninguno)

Complejidad

Constante.

Excepciones

Si se lanza una excepción (que puede ser debido a Allocator::allocate() o al constructor/operador de asignación de copia/desplazamiento de elementos), esta función no tiene efecto ( garantía fuerte de excepción ).

Ejemplo

#include <iomanip>
#include <iostream>
#include <string>
#include <list>
int main()
{
    std::list<std::string> letters;
    letters.push_back("abc");
    std::string s{"def"};
    letters.push_back(std::move(s));
    std::cout << "std::list letters holds: ";
    for (auto&& e : letters)
        std::cout << std::quoted(e) << ' ';
    std::cout << "\nMoved-from string s holds: " << std::quoted(s) << '\n';
}

Salida posible:

std::list letters holds: "abc" "def"
Moved-from string s holds: ""

Véase también

construye un elemento in-situ al final
(función miembro pública)
inserta un elemento al principio
(función miembro pública)
elimina el último elemento
(función miembro pública)
crea un std::back_insert_iterator del tipo inferido del argumento
(plantilla de función)