Поделиться через


Структура iterator

Пустая базовая структура, используемая для обеспечения правильной iterator_traitработы определяемого пользователем класса итератора.

Синтаксис

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 (синоним для параметра-шаблона Type).

  • difference_type (синоним для параметра-шаблона Distance).

  • distance_type (синоним для параметра-шаблона Distance)

  • pointer (синоним для параметра-шаблона Pointer).

  • reference (синоним для параметра-шаблона Reference).

Обратите внимание, что value_type не должен быть константным типом, даже если pointer точки в объекте const Type и ссылке указывают объект const Type.

Пример

См. раздел iterator_traits с примером того, как объявить и использовать типы в базовом классе итератора.

Требования

Заголовок:<итератор>

Пространство имен: std

См. также

<iterator>
Потокобезопасность в стандартной библиотеке C++
Справочник по стандартной библиотеке C++