vector::vector
Crea un vettore con dimensione specifica o con gli elementi di un valore specifico o con un allocatore specifico o come copia di tutto o parte di un altro vettore.
vector( );
explicit vector(
const Allocator& _Al
);
explicit vector(
size_type _Count
);
vector(
size_type _Count,
const Type& _Val
);
vector(
size_type _Count,
const Type& _Val,
const Allocator& _Al
);
vector(
const vector& _Right
);
template<class InputIterator>
vector(
InputIterator _First,
InputIterator _Last
);
template<class InputIterator>
vector(
InputIterator _First,
InputIterator _Last,
const Allocator& _Al
);
vector(
vector&& _Right
);
Parametri
Parametro |
Descrizione |
_Al |
Classe dell'allocatore da utilizzare con questo oggetto.get_allocator restituisce la classe di un allocatore per l'oggetto. |
_Count |
Il numero di elementi nel vettore costruito. |
_Val |
Il valore degli elementi nel vettore costruito. |
_Right |
Il vettore che il vettore viene costruito da una copia. |
_First |
Posizione del primo elemento nella serie di elementi da copiare. |
_Last |
Posizione del primo elemento oltre la serie di elementi da copiare. |
Note
Tutti i costruttori archiviano un oggetto allocatore_Al() e inizializzano il vettore.
i primi due costruttori specificano un vettore iniziale vuoto.Il secondo specifica in modo esplicito il tipo di_Alallocatore () da utilizzare.
Il terzo costruttore specifica una ripetizione di un numero specificato ()_Countdegli elementi di valore predefinito per una classe Type.
I il quarto e quinti costruttori specificano una ripetizione di elementi ()_Countdi valore _Val.
Il sesto costruttore specifica una copia del vettore _Right.
Il settimo e gli ottavi costruttori copia dell'intervallo [_First, _Last) di un vettore.
l'ultimo costruttore sposta il vettore _Right.
Esempio
// vector_ctor.cpp
// compile with: /EHsc
#include <vector>
#include <iostream>
int main( )
{
using namespace std;
vector <int>::iterator v1_Iter, v2_Iter, v3_Iter, v4_Iter, v5_Iter, v6_Iter;
// Create an empty vector v0
vector <int> v0;
// Create a vector v1 with 3 elements of default value 0
vector <int> v1( 3 );
// Create a vector v2 with 5 elements of value 2
vector <int> v2( 5, 2);
// Create a vector v3 with 3 elements of value 1 and with the allocator
// of vector v2
vector <int> v3( 3, 1, v2.get_allocator( ) );
// Create a copy, vector v4, of vector v2
vector <int> v4( v2 );
// Create a new temporary vector for demonstrating copying ranges
vector <int> v5( 5 );
for ( int index = 0; index < 5; index++ )
v5[index] = index;
// Create a vector v6 by copying the range v5[_First, _Last)
vector <int> v6( v5.begin( ) + 1, v5.begin( ) + 3 );
cout << "v1 =" ;
for ( v1_Iter = v1.begin( ) ; v1_Iter != v1.end( ) ; v1_Iter++ )
cout << " " << *v1_Iter;
cout << endl;
cout << "v2 =" ;
for ( v2_Iter = v2.begin( ) ; v2_Iter != v2.end( ) ; v2_Iter++ )
cout << " " << *v2_Iter;
cout << endl;
cout << "v3 =" ;
for ( v3_Iter = v3.begin( ) ; v3_Iter != v3.end( ) ; v3_Iter++ )
cout << " " << *v3_Iter;
cout << endl;
cout << "v4 =" ;
for ( v4_Iter = v4.begin( ) ; v4_Iter != v4.end( ) ; v4_Iter++ )
cout << " " << *v4_Iter;
cout << endl;
cout << "v5 =";
for ( v5_Iter = v5.begin( ) ; v5_Iter != v5.end( ) ; v5_Iter++ )
cout << " " << *v5_Iter;
cout << endl;
cout << "v6 =";
for ( v6_Iter = v6.begin( ) ; v6_Iter != v6.end( ) ; v6_Iter++ )
cout << " " << *v6_Iter;
cout << endl;
// Move vector v2 to vector v7
vector <int> v7( move(v2) );
vector <int>::iterator v7_Iter;
cout << "v7 =" ;
for ( v7_Iter = v7.begin( ) ; v7_Iter != v7.end( ) ; v7_Iter++ )
cout << " " << *v7_Iter;
cout << endl;
}
Requisiti
intestazione: <vector>
Spazio dei nomi: deviazione standard