Namespaces
Variants
Views
Actions

std::iterator

From cppreference.com
< cpp‎ | iterator
Revision as of 10:48, 7 July 2013 by P12 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Defined in header <iterator>
template<

    class Category,
    class T,
    class Distance = std::ptrdiff_t,
    class Pointer = T*,
    class Reference = T&

> struct iterator;

std::iterator is the base class provided to simplify definitions of the required types for iterators.

[edit] Template parameters

Category - the category of the iterator. Must be one of iterator category tags.
T - the type of the values that can be obtained by dereferencing the iterator. This type should be void for output iterators.
Distance - a type that can be used to identify distance between iterators
Pointer - defines a pointer to the type iterated over (T)
Reference - defines a reference to the type iterated over (T)

[edit] Member types

Member type Definition
value_type T
difference_type Distance
pointer Pointer
reference Reference
iterator_category Category

[edit] See also

provides uniform interface to the properties of an iterator
(class template) [edit]
empty class types used to indicate iterator categories
(class) [edit]