Sintassi:
#include <vector> void assign( size_type num, const T& val ); void assign( input_iterator start, input_iterator end );
Nella prima forma assign() assegna ai primi num elementi del vettore il valore val, mentre nella seconda forma assegna ad un vettore i valori contenuti nel range definito dagli iteratori start e end.
Questa funzione distrugge i contenuti precedenti del vettore.
In questo esempio assign() viene usato per assegnare il valore intero 42 a 10 elementi di un vettore:
vector<int> v; v.assign( 10, 42 ); for( int i = 0; i < v.size(); i++ ) { cout << v[i] << " "; } cout << endl;
L'output di questo esempio sarebbe:
42 42 42 42 42 42 42 42 42 42
L'esempio seguente mostra come assign() può essere usato per copiare un vettore in un altro:
vector<int> v1; for( int i = 0; i < 10; i++ ) { v1.push_back( i ); } vector<int> v2; v2.assign( v1.begin(), v1.end() ); for( int i = 0; i < v2.size(); i++ ) { cout << v2[i] << " "; } cout << endl;
Il codice appena mostrato produce il seguente output:
0 1 2 3 4 5 6 7 8 9
Argomenti collegati: insert, push_back, [] operator