Bibliothèque d'itérateurs C ++ - distance

La description

Il calcule le nombre d'éléments entre le premier et le dernier.

Déclaration

Voici la déclaration pour std :: distance.

C ++ 11

template<class InputIterator>
  typename iterator_traits<InputIterator>::difference_type
    distance (InputIterator first, InputIterator last);

Paramètres

  • first - C'est un élément initial de l'itérateur.

  • last - C'est le dernier élément de l'itérateur.

Valeur de retour

Il renvoie le nombre d'éléments entre le premier et le dernier.

Des exceptions

Si l'une des opérations arithmétiques effectuées sur l'itérateur lance.

Complexité temporelle

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

Exemple

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

#include <iostream>     
#include <iterator>     
#include <list>         

int main () {
   std::list<int> mylist;
   for (int i = 0; i < 5; i++) mylist.push_back (i*1);

   std::list<int>::iterator first = mylist.begin();
   std::list<int>::iterator last = mylist.end();

   std::cout << "The distance between first and last is: " << std::distance(first,last) << '\n';

   return 0;
}

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

The distance between first and last is: 5