Итератор - Большая Энциклопедия Нефти и Газа, статья, страница 1
Не волнуйся, если что-то работает не так. Если бы все работало как надо, ты сидел бы без работы. Законы Мерфи (еще...)

Итератор

Cтраница 1


1 Использование итератора для косвенной связи со списком. [1]

Итератор ( iterator) обеспечивает альтернативный метод обхода элементов в объекте агрегата. Объект итератора обращается к агрегату для обхода его элементов и определяет порядок, в котором проверяются эле менты. Множество классов итератора может быть сопоставлено с классом агрегата, чтобы обеспечить различный порядок обход а эле ментов.  [2]

3 Использование итератора для косвенной связи со списком. [3]

Итератор должен знать порядок записи элементов, чтобы определить последовательность их обхода. Если агрегат - это связанный список, то объект итератора должен знать, что элементы сохранены в связанном списке, иуметьпо этому списку перемещаться. Так как итератору известны детали внутренней организации списка, он нарушает инкапсуляцию агрегата.  [4]

Итераторы нарушают принцип инкапсуляции своих агрегатов в отличие от новых классов, которые содержат итераторы.  [5]

Класс, содержащий итератор, не должен обладать информацией, как создан итератор, он всего лишь использует методы итератора для обращения к элементам агрегата.  [6]

Хотя понятие итератора было введено только при рассмотрении класса list, итераторы можно использовать и с векторными классами. Но вместо добавления и удаления элементов в конце списка, они добавляют и удаляют элементы в его начале.  [7]

Что представляют собой итераторы.  [8]

Программа Iter использует итераторы для обхода полного двоичного дерева. Параметр процедуры Traverse указывает на тип обхода. Она использует метод объекта дерева Great elterat or, чтобы создать объект итератора. Итератор - это объект одного из нескольких классов, полученных из класса TIte rator. Процедура Traverse применяет полиморфизм, чтобы оперировать данным объектом, как объектом типа TIterator. Она использует методы итератора EndOfTree, и MoveNext, чтобы вывести узлы дерева.  [9]

В этом примере итераторы и класс дерева также определены в одном модуле. Класс дерева объявляет метод Cre ate Ite rator, который возвращает объект-итератор. Все классы итераторов используют ссылки на класс дерева и должны быть определены в одном объявлении типа, как и все классы Delphi, которые содержат циклические ссылки друг на друга.  [10]

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

Принято ассоциировать объекты итераторы, или, короче - итераторы, с классами контейнерами. Когда написан итератор класса, легко получить следующий элемент этого класса. Итераторы обычно пишутся как друзья классов, с которыми они работают. Это предоставляет итераторам возможность прямого доступа к закрытым данным этих классов. Подобно тому, как книга, читаемая несколькими людьми, могла бы иметь в себе сразу несколько закладок, класс контейнер может иметь несколько одновременно работающих итераторов. Каждый итератор поддерживает свою собственную позицию информации.  [12]

После создания фабрикой соответствующего итератора программа Iter использует его для обхода дерева и перечисления узлов в соответствующем порядке. На рис. 13.5 показано окно программы Iter, отображающее обратный обходдерева.  [13]

Наполняет баллоны сжиженным газом итератор наполнительного отделения под непосредственным руководством мастера.  [14]

Функция-член begin () возвращает итератор на первый узел списка.  [15]



Страницы:      1    2    3    4