Интерфейс IModelIterator (dbgmodel.h)
Итератор автономных объектов (клиент реализуется и возвращается IIterableConcept).
Наследование
IModelIterator наследуется от IUnknown.
Методы
Интерфейс IModelIterator содержит следующие методы.
IModelIterator::AddRef Метод IModelIterator::AddRef увеличивает число ссылок для интерфейса в объекте . |
IModelIterator::GetNext Метод GetNext перемещает итератор вперед и получает следующий итерированный элемент. |
IModelIterator::QueryInterface Метод IModelIterator::QueryInterface извлекает указатели на поддерживаемые интерфейсы объекта . |
IModelIterator::Release Метод IModelIterator::Release уменьшает число ссылок для интерфейса в объекте . |
IModelIterator::Reset Метод Reset для итератора, возвращаемого из итерируемой концепции, восстанавливает положение итератора в том месте, где он был при создании итератора (до первого элемента). |
Комментарии
Концепция итерируемой итерируемой
Объект, который является контейнером других объектов и хочет выразить возможность итерации по этим содержащимся объектам, может поддерживать концепцию итерации с помощью реализации интерфейсов IIterableConcept и IModelIterator. Существует очень важная связь между поддержкой итерируемой концепции и поддержкой индексируемой концепции. Объект, поддерживающий случайный доступ к автономным объектам, может поддерживать индексируемую концепцию в дополнение к концепции итерации. В этом случае итерированные элементы также должны создавать индекс по умолчанию, который при передаче в индексируемую концепцию ссылается на тот же объект. Неспособность удовлетворить этот инвариант приведет к неопределенному поведению на узле отладки.
Требования
Требование | Значение |
---|---|
Заголовок | dbgmodel.h |