assign
De cppreference.com
Sintáxis:
#include <list> void assign( size_type num, const T& val ); void assign( input_iterator start, input_iterator end );
La función assign() asigna a la lista num copias de val o los valores comprendidos entre start y end.
Esta función destruye el contenido previo de la lista.
Por ejemplo, el siguiente código emplea assign() para copiar 10 veces el entero 42 en la lista.
list<int> l; l.assign( 10, 42 ); for( list<int>::iterator iter = l.begin() ; iter != l.end() ; ++iter ) { cout << *iter << " "; } cout << endl;
La salida del código anterior es la siguiente:
42 42 42 42 42 42 42 42 42 42
El siguiente ejemplo muestra cómo puede usarse assign() para copiar una lista en otra:
list<int> l1; for( int i = 0; i < 10; i++ ) { l1.push_back( i ); } list<int> l2; l2.assign( l1.begin(), l1.end() ); for( list<int>::iterator iter = l2.begin() ; iter != l2.end() ; ++iter ) { cout << *iter << " "; } cout << endl;
Al ejecutarse el código anterior produce la siguiente salida:
0 1 2 3 4 5 6 7 8 9
Temas relacionados: insert, push_back, push_front