Reference
C Library
IOstream Library
Strings library
STL Containers
STL Algorithms
Miscellaneous
Miscellaneous
complex
exception
functional
iterator
limits
locale
memory
new
numeric
stdexcept
typeinfo
utility
valarray
iterator
advance
back_inserter
distance
front_inserter
inserter
iterator
iterator_traits
iterator categories:
BidirectionalIterator
ForwardIterator
InputIterator
OutputIterator
RandomAccessIterator
predefined iterators:
back_insert_iterator
front_insert_iterator
insert_iterator
istreambuf_iterator
istream_iterator
ostreambuf_iterator
ostream_iterator
reverse_iterator


BidirectionalIterator

<iterator>

Bidirectional iterator category

Bidirectional

Bidirectional iterators are iterators especially designed for sequential access in both directions - towards the end and towards the beginning.

They have the following characteristics:

characteristicvalid expressions
Can be default-constructedX a;
X()
Can be copied and copy-constructedX b(a);
b = a;
Accepts equality/inequality comparisons.
Equal iterators imply the same element is pointed
a == b
a != b
Can be dereferenced (when not null)*a
a->m
Can be incremented (when not null)++a
a++
*a++
Can be decremented (when not null)--a
a--
*a--
Where X is an iterator type, and a and b are objects of this iterator type.

These characteristics are the same of forward iterators, except that bidirectional iterators also support the decrement operator.

See also