Standard C++ Library Class Reference
Forward iterators have the condition that a == b implies *a== *b.
There are no restrictions on the number of passes an algorithm may make through the structure.
Requirements for Bidirectional Iterators
A bidirectional iterator must meet all the requirements for forward iterators. In addition, the
following expressions must be valid:
--r returns X&
r-- return value convertable to const X&
*r-- returns T&
Requirements for Random Access Iterators
A random access iterator must meet all the requirements for bidirectional iterators. In addition,
the following expressions must be valid:
r += n Semantics of --r or ++r n times depending on the sign of n
a + n, n + a returns type X
r -= n returns X&, behaves as r += -n
a - n returns type X
b - a returns Distance
a[n] *(a+n), return value convertable to T
a < b total ordering relation
a > b total ordering relation opposite to <
a <= b !(a > b)
a >= b !(a < b)
All relational operators return a value convertable to bool.
See Also
Input Iterators, Insert Iterators, Forward Iterators, Bidirectional Iterators, Output Iterators