Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

distance

Description

Returns the distance between two iterators.

Synopsis
template<
    typename I,
    typename J
    >
struct distance
{
    typedef unspecified type;
};

Table 1.16. Parameters

Parameter

Requirement

Description

I, J

Models of Forward Iterator into the same sequence

The start and end points of the distance to be measured

Expression Semantics
result_of::distance<I, J>::type

Return type: A model of MPL Integral Constant.

Semantics: Returns the distance between iterators of types I and J.

/iterator/distance.hpp>

Example
typedef vector<int,double,char> vec;
typedef result_of::begin<vec>::type first;
typedef result_of::next<first>::type second;
typedef result_of::next<second>::type third;
typedef result_of::distance<first,third>::type dist;

BOOST_MPL_ASSERT_RELATION(dist::value, ==, 2);

PrevUpHomeNext