Udostępnij za pośrednictwem


vector::insert

Wstawia element lub liczba elementów lub zakres elementów do vector w określonym położeniu.

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

Parametry

Parametr

Opis

_Where

Pozycja w wektorze gdzie dodaje pierwszego elementu.

_Val

Wartość elementu jest wstawiony wektora.

_Count

Liczba elementów jest wstawiony wektora.

_First

Pozycja pierwszego elementu w zakresie elementy do skopiowania.

_Last

Pozycja pierwszego elementu poza zakres elementów, które mają być skopiowane.

Wartość zwracana

Pierwsze dwa insert funkcje zwracają iterację, wskazującą położenie, gdy nowy element został wstawiony wektora.

Uwagi

Wszelkie operacje wstawiania może być kosztowne, zobacz klasy vector dla dyskusji o vector wydajności.

Przykład

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

Wymagania

Nagłówek: <vector>

Obszar nazw: std

Zobacz też

Informacje

vector Class

Standardowa biblioteka szablonu