Bibliothèque d'itérateur C ++ - front_insert_iterator

La description

Il s'agit d'un itérateur de sortie spécial conçu pour autoriser des algorithmes qui écrasent généralement des éléments.

Déclaration

Voici la déclaration pour std :: front_insert_iterator.

C ++ 11

template <class Container> class front_insert_iterator;

Paramètres

Container - C'est une classe de conteneur.

Valeur de retour

aucun

Des exceptions

Si x lève d'une manière ou d'une autre en lui appliquant l'opérateur unaire &, cette fonction ne lève jamais d'exceptions.

Complexité temporelle

constante pour les itérateurs à accès aléatoire.

Exemple

L'exemple suivant montre l'utilisation de std :: front_insert_iterator.

#include <iostream>
#include <iterator>
#include <deque>
#include <algorithm>

int main () {
   std::deque<int> foo, bar;
   for (int i = 10; i >= 5; i--) {
      foo.push_back(i); bar.push_back(i*10);
   }

   std::front_insert_iterator< std::deque<int> > front_it (foo);

   std::copy (bar.begin(),bar.end(),front_it);

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

   return 0;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

foo: 50 60 70 80 90 100 10 9 8 7 6 5