итератор в словаре кроссвордиста
Википедия
Итератор — интерфейс , предоставляющий доступ к элементам коллекции и навигацию по ним. В различных системах итераторы могут иметь разные общепринятые названия. В терминах систем управления базами данных итераторы называются курсорами . В простейшем случае итератором в низкоуровневых языках является указатель .
Использование итераторов в обобщённом программировании позволяет реализовать универсальные алгоритмы работы с контейнерами .
Iterator — поведенческий шаблон проектирования . Представляет собой объект, позволяющий получить последовательный доступ к элементам объекта-агрегата без использования описаний каждого из агрегированных объектов.
Например, такие элементы как дерево , связанный список , хэш-таблица и массив могут быть пролистаны с помощью объекта Итератор.
Перебор элементов выполняется объектом итератора, а не самой коллекцией. Это упрощает интерфейс и реализацию коллекции, а также способствует более логичному разделению обязанностей .
Особенностью полноценно реализованного итератора является то, что код, использующий итератор, может ничего не знать о типе итерируемого агрегата.
Конечно же, почти в любом агрегате можно выполнять итерации указателем void*, но при этом:
- не ясно, что является значением «конец агрегата», для двусвязного списка это &ListHead, для массива это &array[size], для односвязного списка это NULL
- операция Next сильно зависит от типа агрегата.
Итераторы позволяют абстрагироваться от типа и признака окончания агрегата, используя полиморфный Next (часто реализованный как operator++ в С++) и полиморфный aggregate.end, возвращающий значение «конец агрегата».
Таким образом, появляется возможность работы с диапазонами итераторов, при отсутствии знания о типе итерируемого агрегата. Например:
Iterator itBegin = aggregate.begin; Iterator itEnd = aggregate.end; func(itBegin, itEnd);И далее:
void func(Iterator itBegin, Iterator itEnd) { for( Iterator it = itBegin, it != itEnd; ++it ) { } }Итератор — устройство, выполняющее итерации .
Итератор также может означать:
- Итератор — объект, позволяющий программисту перебирать все элементы коллекции без учёта особенностей её реализации.
- « Итератор » — аналоговая вычислительная машина, разработанная в Институте кибернетики АН УССР в 1962 году для решения линейных краевых задач систем линейных дифференциальных уравнений.