Bibliothèque d'algorithmes C ++ - Fonction copy_n ()

La description

La fonction C ++ std::algorithm::copy_n()copie les n premiers nombres vers un nouvel emplacement. Si la valeur de n est négative, la fonction ne fait rien.

Déclaration

Voici la déclaration de la fonction std :: algorithm :: copy_n () sous forme d'en-tête std :: algorithme.

C ++ 11

template <class InputIterator, class Size, class OutputIterator>
OutputIterator copy_n (InputIterator first, Size n, OutputIterator result);

Paramètres

  • first - Entrer les itérateurs aux positions initiales de la séquence recherchée.

  • n - Nombre d'éléments à copier.

  • 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_n ().

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

using namespace std;

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

   copy_n(v1.begin(), 3, 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