close
Пространства имён
Варианты
Действия

Концепции C++: Iterator

Материал из cppreference.com
 
 
 

Концепция

Iterator описывает типы, которые могут использоваться для идентификации и перемещения элементов контейнера.
Оригинал:
The Iterator concept describes types that can be used to identify and traverse the elements of a container.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Iterator - это базовая концепция, которая используются другими типами итераторов: InputIterator, OutputIterator, ForwardIterator, BidirectionalIterator, и RandomAccessIterator. Итераторы можно рассматривать как абстракцию указателей.
Оригинал:
Iterator is the base concept used by other iterator types: InputIterator, OutputIterator, ForwardIterator, BidirectionalIterator, and RandomAccessIterator. Iterators can be thought of as an abstraction of pointers.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Требования

Тип It удовлетворяет требованиям Iterator если

  • Тип It удовлетворяет CopyConstructible, и
  • Тип It удовлетворяет CopyAssignable, и
  • Тип It удовлетворяет Destructible, и
  • lvalue типа It удовлетворяет Swappable, и
  • std::iterator_traits<It> содержит typedef-члены value_type, difference_type, reference, pointer, iterator_category, и

определяет

  • i, как lvalue типа It.
В дополнение к перечисленным требованиям, для объектов i типа It, представляющего собой Iterator, должны быть выполнены следующие условия:
Оригинал:
For type It to be an Iterator, in addition to the other requirements, the following conditions have to be satisfied for an object i of such type:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Выражение Возвращаемый типе Предусловие
*i reference[1] i может разыменовываться [2]
++i It& i может инкрементироваться (поведение выражения ++i определено)

См. также

Сноски

  1. Как определено в iterator_traits
  2. Корректный итератор, указывающий на существующий элемент
Оригинал:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.