Library: Iterators
Does not inherit
A base iterator class
#include <iterator>
namespace std {
template <class Category, class T,
class Distance = ptrdiff_t, class Pointer = T*,
class Reference = T&>
struct iterator
{
typedef T value_type;
typedef Distance difference_type;
typedef Pointer pointer;
typedef Reference reference;
typedef Category iterator_category;
};
}
The iterator structure is a base class from which all other iterator types can be derived. This structure defines an interface that consists of five public types: value_type, difference_type, pointer, reference, and iterator_category. These types are used primarily by classes derived from iterator and by the iterator_traits class.
See the Iterators section for a description of iterators and the capabilities associated with various types.
ISO/IEC 14882:1998 -- International Standard for Information Systems -- Programming Language C++, Section 24.3.2