Biblioteca de iteradores de C ++ - distancia

Descripción

Calcula el número de elementos entre el primero y el último.

Declaración

A continuación se muestra la declaración de std :: distance.

C ++ 11

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

Parámetros

  • first - Es un elemento inicial de iterador.

  • last - Es el elemento final del iterador.

Valor devuelto

Devuelve el número de elementos entre el primero y el último.

Excepciones

Si alguna de las operaciones aritméticas realizadas en el iterador arroja.

Complejidad del tiempo

constante para iteradores de acceso aleatorio.

Ejemplo

El siguiente ejemplo muestra el uso 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;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

The distance between first and last is: 5