Bibliothèque d'algorithmes C ++ - fonction copy ()

La description

La fonction C ++ std::algorithm::copy() copie une plage d'éléments vers un nouvel emplacement.

Déclaration

Voici la déclaration de l'en-tête std :: algorithme :: copy () de la fonction std :: algorithme.

C ++ 98

template <class InputIterator, class OutputIterator>
OutputIterator copy (InputIterator first, InputIterator last, OutputIterator result);

Paramètres

  • first - Entrer les itérateurs aux positions initiales dans une séquence.

  • last - Entrer les itérateurs pour les positions finales dans une séquence.

  • result - Sortie de l'itérateur à la position initiale dans la nouvelle séquence.

Valeur de retour

Renvoie un itérateur à la fin de la plage de destination où les éléments ont été copiés.

Des exceptions

Lève une exception si l'affectation d'élément ou une opération sur un itérateur lève une exception.

Veuillez noter que des paramètres non valides provoquent un comportement non défini.

Complexité temporelle

Linéaire dans la distance entre le premier et le dernier .

Exemple

L'exemple suivant montre l'utilisation de la fonction std :: algorithm :: copy ().

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

using namespace std;

int main(void) {
   vector<int> v1 = {1, 2, 3, 4, 5};
   vector<int> v2(5);

   copy(v1.begin(), v1.end(), v2.begin());

   cout << "Vector v2 contains following elements" << endl;

   for (auto it = v2.begin(); it != v2.end(); ++it)
      cout << *it << endl;

   return 0;
}

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

Vector v2 contains following elements
1
2
3
4
5