#include
<iterator>
template <class In> typename iterator_traits<In>::difference_type distance(In first, In last)
Berechnet die Anzahl der Elemente des Bereichs [first, last).
first , last | Iteratoren |
Rückgabewert: last - first
für Random-Access-Iteratoren,
bei anderem Iteratortyp Anzahl der Anweisungen ++first;
bis zum Eintreten von first==last
.
#include <iterator> #include <vector> #include <iostream> int main() { std::vector<double> v = { 1, 2, 3, 4, 5 }; auto m = begin(v) + distance(begin(v), end(v)) / 2; std::cout << *m << '\n'; advance(m, 1); std::cout << *m << '\n'; advance(m, -2); std::cout << *m << '\n'; }