...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Front Page / Iterators / Iterator Metafunctions / distance |
Returns the distance between First and Last iterators, that is, an Integral Constant n such that advance<First,n>::type is identical to Last.
#include <boost/mpl/distance.hpp>
Parameter | Requirement | Description |
---|---|---|
First, Last | Forward Iterator | Iterators to compute a distance between. |
For any Forward Iterators first and last:
typedef distance<first,last>::type n;
Return type: | |
---|---|
Precondition: | [first, last) is a valid range. |
Semantics: | Equivalent to typedef iter_fold< iterator_range<first,last> , long_<0> , next<_1> >::type n; |
Postcondition: | is_same< advance<first,n>::type, last >::value == true. |
Amortized constant time if first and last are Random Access Iterators, otherwise linear time.