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

La description

Il construit un itérateur d'insertion arrière qui insère de nouveaux éléments à la fin de x.

Déclaration

Voici la déclaration pour std :: back_inserter.

C ++ 11

template <class Container>
  back_insert_iterator<Container> back_inserter (Container& x);

Paramètres

x - C'est un conteneur sur lequel l'itérateur va insérer de nouveaux éléments.

Valeur de retour

Il renvoie back_insert_iterator qui insère des éléments à la fin du conteneur x.

Exceptions

Si x lève en quelque sorte tout 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 :: back_inserter.

#include <iostream>
#include <iterator>
#include <vector>
#include <algorithm>

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

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

   std::cout << "foo contains:";
   for ( std::vector<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 contains: 1 2 3 1 2 3