libstdc++
Iterator Tags
Collaboration diagram for Iterator Tags:

Classes

struct  std::bidirectional_iterator_tag
 Bidirectional iterators support a superset of forward iterator operations. More...
struct  std::forward_iterator_tag
 Forward iterators support a superset of input iterator operations. More...
struct  std::input_iterator_tag
 Marking input iterators. More...
struct  std::output_iterator_tag
 Marking output iterators. More...
struct  std::random_access_iterator_tag
 Random-access iterators support a superset of bidirectional iterator operations. More...

Detailed Description

These are empty types, used to distinguish different iterators. The distinction is not made by what they contain, but simply by what they are. Different underlying algorithms can then be used based on the different operations supported by different iterator types.