Libreria Iterator C ++ - inserter

Descrizione

Costruisce un iteratore di inserimento che inserisce nuovi elementi in x in posizioni successive a partire dalla posizione indicata da esso.

Dichiarazione

Di seguito è la dichiarazione per std :: inserter.

C ++ 11

template <class Container, class Iterator>
  insert_iterator<Container> inserter (Container& x, Iterator it);

Parametri

x - È un contenitore su cui l'iteratore inserirà nuovi elementi.

Valore di ritorno

Restituisce un insert_iterator che inserisce elementi in x nella posizione da esso indicata.

Eccezioni

Se x in qualche modo genera mentre applica l'operatore unario & ad esso, questa funzione non genera mai eccezioni.

Complessità temporale

costante per iteratori ad accesso casuale.

Esempio

L'esempio seguente mostra l'utilizzo di std :: inserter.

#include <iostream>
#include <iterator> 
#include <list>
#include <algorithm>

int main () {
   std::list<int> foo,bar;
   for (int i = 1; i <= 5; i++) {
      foo.push_back(i); bar.push_back(i*5);
   }

   std::list<int>::iterator it = foo.begin();
   advance (it,3);

   std::copy (bar.begin(),bar.end(),std::inserter(foo,it));

   std::cout << "foo contains:";
   for ( std::list<int>::iterator it = foo.begin(); it!= foo.end(); ++it )
      std::cout << ' ' << *it;
   std::cout << '\n';

   return 0;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

foo contains: 1 2 3 5 10 15 20 25 4 5