Интернет магазин китайских планшетных компьютеров |
|
Компьютеры - Итератор (шаблон проектирования)30 марта 2011Оглавление: 1. Итератор (шаблон проектирования) 2. Использование Шаблон проектирования, относится к паттернам поведения. Представляет собой объект, позволяющий получить последовательный доступ к элементам объекта-агрегата без использования описаний каждого из объектов, входящий в состав агрегации. Например, такие элементы как дерево, связанный список, хэш-таблица и массив могут быть пролистаны с помощью паттерна Итератор. Особенностью полноценно реализованного итератора является то, что код, использующий итератор, может ничего не знать о типе итерируемого агрегата. Конечно же, почти любой агрегат можно итерировать указателем void*, но при этом:
Итераторы абстрагируют именно эти 2 проблемы, используя полиморфный Next и полиморфный aggregate.end, возвращающий значение "конец агрегата". Таким образом, появляется возможность работы с диапазонами итераторов, при отсутствии знания о типе итерируемого агрегата. Например: Iterator itBegin = aggregate.begin; Iterator itEnd = aggregate.end; func; И далее: void func { for { } } Просмотров: 1699
|