advance
·
back_insert_iterator
·
back_inserter
·
bidirectional_iterator_tag
·
distance
·
forward_iterator_tag
·
front_insert_iterator
·
front_inserter
·
input_iterator_tag
·
insert_iterator
·
inserter
·
istream_iterator
·
istreambuf_iterator
·
iterator
·
iterator_traits
·
operator!=
·
operator==
·
operator<
·
operator<=
·
operator>
·
operator>=
·
operator+
·
operator-
·
ostream_iterator
·
ostreambuf_iterator
·
output_iterator_tag
·
random_access_iterator_tag
·
reverse_bidirectional_iterator
·
reverse_iterator
namespace std {
struct input_iterator_tag;
struct output_iterator_tag;
struct forward_iterator_tag;
struct bidirectional_iterator_tag;
struct random_access_iterator_tag;
// TEMPLATE CLASSES
template<class C, class T, class Dist>
struct iterator;
template<class It>
struct iterator_traits;
template<class T>
struct iterator_traits<T *>
template<class BidIt, class T, class Ref,
class Ptr, class Dist>
class reverse_bidirectional_iterator;
template<class RanIt, class T, class Ref,
class Ptr, class Dist>
class reverse_iterator;
template<class Cont>
class back_insert_iterator;
template<class Cont>
class front_insert_iterator;
template<class Cont>
class insert_iterator;
template<class T, class Dist>
class istream_iterator;
template<class T>
class ostream_iterator;
template<class E, class T>
class istreambuf_iterator;
template<class E, class T>
class ostreambuf_iterator;
// TEMPLATE FUNCTIONS
template<class BidIt, class T, class Ref, class Ptr, class Dist>
bool operator==(
const reverse_bidirectional_iterator<BidIt, T, Ref,
Ptr, Dist>& lhs,
const reverse_bidirectional_iterator<BidIt, T, Ref,
Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
bool operator==(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class T, class Dist>
bool operator==(
const istream_iterator<T, Dist>& lhs,
const istream_iterator<T, Dist>& rhs);
template<class E, class T>
bool operator==(
const istreambuf_iterator<E, T>& lhs,
const istreambuf_iterator<E, T>& rhs);
template<class BidIt, class T, class Ref, class Ptr, class Dist>
bool operator!=(
const reverse_bidirectional_iterator<BidIt, T, Ref,
Ptr, Dist>& lhs,
const reverse_bidirectional_iterator<BidIt, T, Ref,
Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
bool operator!=(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class T, class Dist>
bool operator!=(
const istream_iterator<T, Dist>& lhs,
const istream_iterator<T, Dist>& rhs);
template<class E, class T>
bool operator!=(
const istreambuf_iterator<E, T>& lhs,
const istreambuf_iterator<E, T>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
bool operator<(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>&mmp lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
bool operator>(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>&mmp lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
bool operator<=(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>&mmp lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
bool operator>=(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>&mmp lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
Dist operator-(
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& lhs,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class RanIt, class T, class Ref, class Ptr, class Dist>
reverse_iterator<RanIt, T, Ref, Ptr, Dist> operator+(
Dist n,
const reverse_iterator<RanIt, T, Ref, Ptr, Dist>& rhs);
template<class Cont>
back_insert_iterator<Cont> back_inserter(Cont& x);
template<class Cont>
front_insert_iterator<Cont> front_inserter(Cont& x);
template<class Cont, class Iter>
insert_iterator<Cont> inserter(Cont& x, Iter it);
template<class InIt, class Dist>
void advance(InIt& it, Dist n);
template<class Init, class Dist>
ptrdiff_t distance(InIt first, InIt last);
};
Include the STL standard header <iterator>
to define a number of classes, template classes, and template functions
that aid in the declaration and manipulation of iterators.