Standard C++ Library Reference ISO/IEC (VERSION3)

const reverse_iterator<RanIt>& left,
const reverse_iterator<RanIt>& right);
template<class RanIt>
Diff operator-(
const reverse_iterator<RanIt>& left,
const reverse_iterator<RanIt>& right);
template<class RanIt>
reverse_iterator<RanIt> operator+(
Diff off,
const reverse_iterator<RanIt>& right);
template<class Container>
back_insert_iterator<Container> back_inserter(Container& cont);
template<class Container>
front_insert_iterator<Container> front_inserter(Container& cont);
template<class Container, class Iter>
insert_iterator<Container> inserter(Container& cont, Iter it);
template<class InIt, class Diff>
void advance(InIt& it, Diff off);
template<class Init>
iterator_traits<InIt>::difference_type
distance(InIt first, InIt last);
};
advance
template<class InIt, class Diff>
void advance(InIt& it, Diff off);
The template function effectively advances it by incrementing it off times. If InIt is a
random-access iterator type, the function evaluates the expression it += off. Otherwise, it
performs each increment by evaluating ++it. If InIt is an input or forward iterator type, off must
not be negative.
back_insert_iterator
template<class Container>
class back_insert_iterator
: public iterator<output_iterator_tag,
void, void, void, void> {
public:
typedef Container container_type;
typedef typename Container::reference reference;
explicit back_insert_iterator(Container& cont);
back_insert_iterator&
operator=(typename Container::const_reference val);