Plain iterator: различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
(Новая страница: «{{NavBar|{{plain_iterator hierarchy}}}} {{plain_iterator_brief}} ===Типы=== {{type_list begin}} {{type_list add|iterator_category|[http://en.cppreference.com…»)
 
Строка 27: Строка 27:


Фактически итерация по элементам коллекции реализуется двумя классами итераторов: <tt>const_plain_iterator</tt> и <tt>plain_iterator</tt>. Первый класс запрещает операции по изменению ассоциированного с ним элемента коллекции.
Фактически итерация по элементам коллекции реализуется двумя классами итераторов: <tt>const_plain_iterator</tt> и <tt>plain_iterator</tt>. Первый класс запрещает операции по изменению ассоциированного с ним элемента коллекции.
{{relation_diagram|diagram=Отношения класса|content=
{{plain_iterator_relations}}
}}

Версия 02:14, 7 января 2016

Шаблон:Plain iterator hierarchy

Компонент, реализующий двунаправленный итератор, для перечисления плоскостей вывода результатов моделирования, т.е. объектов, реализующих интерфейс IPlainObject и принадлежащих коллекции IPlainCollection соответствующей геометрической модели.

Типы

ТипОписание
iterator_categorystd::bidirectional_iterator_tag Типовый идентификатор двунаправленного итератора.
value_typeТип элемента коллекции IPlainCollection, которым является ссылка на объект с интерфейсом IPlainObject.
referenceТип ссылки на ассоциированный с итератором объект. Эквивалентен value_type.
const_referenceТип ссылки на ассоциированный с итератором объект с доступом только на чтение.
pointerТип указателя на ассоциированный с итератором объект.
const_pointerТип указателя на ассоциированный с итератором объект с доступом только на чтение.
size_typeБеззнаковый целочисленный четырехбайтовый тип размера.
difference_typeЗнаковый целочисленный тип разницы между двумя адресами в памяти.

Методы

operator* Шаблон:Plain iterator operator indirection brief
operator-> Шаблон:Plain iterator operator member access brief
operator++ Шаблон:Plain iterator operator increment brief
operator-- Шаблон:Plain iterator operator decrement brief
operator== Шаблон:Plain iterator operator equality brief
operator!= Шаблон:Plain iterator operator inequality brief

Итератор удовлетворяет требованиям DefaultConstructible, CopyConstructible и CopyAssignable.

Фактически итерация по элементам коллекции реализуется двумя классами итераторов: const_plain_iterator и plain_iterator. Первый класс запрещает операции по изменению ассоциированного с ним элемента коллекции.