iterator Struct
Пустая базовая структура, используемая для обеспечения того, чтобы определяемый пользователем класс итератора правильность работы с iterator_traitS.
template<class Category, class Type, class Distance = ptrdiff_t
class Pointer = Type*, class Reference = Type&>
struct iterator {
typedef Category iterator_category;
typedef Type value_type;
typedef Distance difference_type;
typedef Distance distance_type;
typedef Pointer pointer;
typedef Reference reference;
};
Заметки
Структура шаблона выступает как базовый тип для всех итераторов.Она определяет типы элементов
iterator_category (синоним для параметров шаблона Category).
value_type (синоним для параметров шаблона тип).
difference_type (синоним для параметров шаблона Distance).
distance_type (синоним для параметров шаблона Distance)
pointer (синоним для параметров шаблона Pointer).
reference (синоним для параметров шаблона Reference).
Обратите внимание, что value_type не должен быть тип константы, даже если Указатель точки в объекте const тип const и ссылка указывает на объект тип.
Пример
См. iterator_traits пример объявления и использования типов в базовый класс итератора.
Требования
заголовок: <итератор>
пространство имен: STD