Freigeben über


vector::vector

Erstellt einen Vektor einer bestimmten Größe oder mit Elementen eines bestimmten Werts oder mit einer bestimmten Belegungsfunktion oder als Kopie von vollständig oder teilweise eines anderen Vektor-.

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
);

Parameter

Parameter

Description

_Al

Die allocator-Klasse, die mit diesem Objekt verwendet werden soll.get_allocator gibt die allocator-Klasse für das Objekt zurück.

_Count

Die Anzahl der Elemente im erstellten Vektor.

_Val

Der Wert der Elemente im erstellten Vektor.

_Right

Der Vektor, von dem der erstellte Vektor, eine Kopie sein soll.

_First

Die Position des ersten Elements in dem zu kopierenden Elementbereich.

_Last

Die Position des ersten Elements nach dem zu kopierenden Elementbereich.

Hinweise

Alle Konstruktoren speichern ein allocator-Objekt (_Al) und initialisieren den Vektor.

Die ersten beiden Konstruktoren geben einen leeren ursprünglichen Vektor an.Das zweite gibt explizit den verwendet werden Belegungsfunktions antyp (_Al).

Der dritte Konstruktor gibt eine Wiederholung einer angegebenen Anzahl (_Count) Elemente des Standardwerts für Klasse Type an.

Die vierten und fünften Konstruktoren geben eine Wiederholung von (_Count) Elementen des Werts _Val an.

Der 6. Konstruktor wird eine Kopie des Vektors _Right an.

Das Siebtel und die beobachten Konstruktoren kopieren den Bereich [_First, _Last) eines Vektor-.

Der letzte Konstruktor verschiebt den Vektor _Right.

Beispiel

// 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;
}
  

Anforderungen

Header: <vector>

Namespace: std

Siehe auch

Referenz

vector Class

Standardvorlagenbibliothek