Libreria Iterator C ++ - insert_iterator
Descrizione
È uno speciale iteratore di output progettato per consentire agli algoritmi che di solito sovrascrivono gli elementi come copia di inserire invece nuovi elementi in una posizione specifica nel contenitore.
Dichiarazione
Di seguito è riportata la dichiarazione per std :: insert_iterator.
C ++ 11
template <class Container> class insert_iterator;
Parametri
Container - È una classe contenitore.
Valore di ritorno
nessuna
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 :: insert_iterator.
#include <iostream>
#include <iterator>
#include <list>
#include <algorithm>
int main () {
std::list<int> foo, bar;
for (int i = 10; i >= 5; i--) {
foo.push_back(i); bar.push_back(i*10);
}
std::list<int>::iterator it = foo.begin();
advance(it,3);
std::insert_iterator< std::list<int> > insert_it (foo,it);
std::copy (bar.begin(),bar.end(),insert_it);
std::cout << "foo:";
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: 10 9 8 100 90 80 70 60 50 7 6 5