24 Iterators library [iterators]

24.5 Iterator adaptors [predef.iterators]

24.5.3 Move iterators [move.iterators]

24.5.3.3 move_iterator operations [move.iter.ops]

24.5.3.3.14 move_iterator non-member functions [move.iter.nonmember]

template <class Iterator1, class Iterator2> auto operator-( const move_iterator<Iterator1>& x, const move_iterator<Iterator2>& y) -> decltype(x.base() - y.base());

Returns: x.base() - y.base().

template <class Iterator> move_iterator<Iterator> operator+( typename move_iterator<Iterator>::difference_type n, const move_iterator<Iterator>& x);

Returns: x + n.

template <class Iterator> move_iterator<Iterator> make_move_iterator(Iterator i);

Returns: move_iterator<Iterator>(i).