◐ Shell
clean mode source ↗

std::distance - cppreference.com

De cppreference.com

<metanoindex/>

<tbody> </tbody>

Definido no cabeçalho

<iterator>

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

Retorna o número de elementos entre first e last.

Original:

Returns the number of elements between first and last.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

O comportamento é indefinido se last não é acessível a partir de first por (possivelmente repetidamente) incrementando first.

Original:

The behavior is undefined if last is not reachable from first by (possibly repeatedly) incrementing first.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Parâmetros

first -

iterador apontando para o primeiro elemento

Original:

iterator pointing to the first element

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

last -

iterador apontando para o último elemento

Original:

iterator pointing to the last element

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Type requirements
-InputIt must meet the requirements of InputIterator. The operation is more efficient if InputIt additionally meets the requirements of RandomAccessIterator

Valor de retorno

O número de elementos entre first e last.

Original:

The number of elements between first and last.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Complexidade

Linear.

Original:

Linear.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

No entanto, se, adicionalmente, InputIt cumpre os requisitos da RandomAccessIterator, a complexidade é constante.

Original:

However, if InputIt additionally meets the requirements of RandomAccessIterator, complexity is constant.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Exemplo

#include <iostream>
#include <iterator>
#include <vector>

int main() 
{
    std::vector<int> v{ 3, 1, 4 };

    auto distance = std::distance(v.begin(), v.end());

    std::cout << distance << '\n';
}

Saída:

Veja também

avanços de um iterador por determinada distância

Original:

advances an iterator by given distance

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(função) [edit]