Biblioteca C ++ Iterator - distância

Descrição

Ele calcula o número de elementos entre o primeiro e o último.

Declaração

A seguir está a declaração para std :: distance.

C ++ 11

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

Parâmetros

  • first - É um elemento inicial do iterador.

  • last - É o elemento final do iterador.

Valor de retorno

Ele retorna o número de elementos entre o primeiro e o último.

Exceções

Se alguma das operações aritméticas executadas no iterador lançar.

Complexidade de tempo

constante para iteradores de acesso aleatório.

Exemplo

O exemplo a seguir mostra o 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;
}

Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -

The distance between first and last is: 5