Freigeben über


vector::insert

Fügt ein Element oder mehrere Elemente oder ein Bereich von Elementen in den Vektor in einer angegebenen Position ein.

iterator insert(
   const_iterator _Where,
   const Type& _Val
);
iterator insert(
   const_iterator _Where,
   Type&& _Val
);
void insert(
   const_iterator _Where,
   size_type _Count,
   const Type& _Val
);
template<class InputIterator>
   void insert(
      const_iterator _Where,
      InputIterator _First,
      InputIterator _Last
   );

Parameter

Parameter

Description

_Where

Die Position im Vektor, in der das erste Element eingefügt wird.

_Val

Der Wert des Elements, das in den Vektor eingefügt wird.

_Count

Die Anzahl von Elementen, die in den Vektor eingefügt werden.

_First

Die Position des ersten Elements im Bereich von Elementen kopiert werden.

_Last

Die Position des ersten Elements über den Bereich von Elementen hinaus kopiert werden.

Rückgabewert

Die ersten beiden insert-Funktionen geben einen Iterator zurück, der der Position zeigt, in der das neue Element in den Vektor eingefügt wurde.

Hinweise

Jeder Einfügungsvorgang kann kostenintensiv sein, finden Vektor Klasse Erläuterungen zur vector Leistung.

Beispiel

// vector_insert.cpp
// compile with: /EHsc
#include <vector>
#include <iostream>

int main( )
{
   using namespace std;   
   vector <int> v1;
   vector <int>::iterator Iter;
   
   v1.push_back( 10 );
   v1.push_back( 20 );
   v1.push_back( 30 );

   cout << "v1 =" ;
   for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
      cout << " " << *Iter;
   cout << endl;

   v1.insert( v1.begin( ) + 1, 40 );
   cout << "v1 =";
   for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
      cout << " " << *Iter;
   cout << endl;
   v1.insert( v1.begin( ) + 2, 4, 50 );

   cout << "v1 =";
   for ( Iter = v1.begin( ) ; Iter != v1.end( ) ; Iter++ )
      cout << " " << *Iter;
   cout << endl;

   v1.insert( v1.begin( )+1, v1.begin( )+2, v1.begin( )+4 );
   cout << "v1 =";
   for (Iter = v1.begin( ); Iter != v1.end( ); Iter++ )
      cout << " " << *Iter;
   cout << endl;

// initialize a vector of vectors by moving v1
   vector < vector <int> > vv1;

   vv1.insert( vv1.begin(), move( v1 ) );
   if ( vv1.size( ) != 0 && vv1[0].size( ) != 0 )
      {
      vector < vector <int> >::iterator Iter;
      cout << "vv1[0] =";
      for (Iter = vv1[0].begin( ); Iter != vv1[0].end( ); Iter++ )
         cout << " " << *Iter;
      cout << endl;
      }
}
  

Anforderungen

Header: <vector>

Namespace: std

Siehe auch

Referenz

vector Class

Standardvorlagenbibliothek