Поделиться через


IEnumOnSTLImpl Class

Этот класс определяет интерфейс перечислителя на основе коллекций STL.

template < 
   class Base, 
   const IID* piid, 
   class T, 
   class Copy, 
   class CollType 
> 
class ATL_NO_VTABLE IEnumOnSTLImpl : 
   public Base

Параметры

  • Base
    Интерфейс перечислителя модели COM (IEnumXXXX).

  • piid
    Указатель на идентификатор интерфейса интерфейса перечислителя.

  • T
    Тип элемента, предоставляемый интерфейсом перечислителя.

  • Copy
    класс политики копирования.

  • CollType
    Класс контейнеров STL.

Члены

Открытые методы

Имя

Описание

IEnumOnSTLImpl::Clone

Реализация IEnumXXXX::Clone.

IEnumOnSTLImpl::Init

Инициализация перечислителя.

IEnumOnSTLImpl::Next

Реализация IEnumXXXX::Next.

IEnumOnSTLImpl::Reset

Реализация IEnumXXXX::Reset.

IEnumOnSTLImpl::Skip

Реализация IEnumXXXX::Skip.

Открытые члены данных

Имя

Описание

IEnumOnSTLImpl::m_iter

Итератор, который представляет текущую позицию перечислителя в коллекции.

IEnumOnSTLImpl::m_pcollection

Указатель к контейнеру STL, содержащий элементы для перечисления.

IEnumOnSTLImpl::m_spUnk

Указатель IUnknown объекта, предоставляющего коллекцию.

Заметки

IEnumOnSTLImpl предоставляет реализацию интерфейса перечислителя модели COM, где, перечисленными элементы хранятся в контейнере STL- совместимости. Этот класс аналогичн к классу CComEnumImpl, который предоставляет реализацию интерфейса перечислителя на основе массива.

Примечание

Дополнительные сведения см. в разделе CComEnumImpl::Init на более дополнительных различиях между CComEnumImpl и IEnumOnSTLImpl.

Обычно не требуется создавать собственный класс перечислителя путем наследования от этой реализации интерфейса. Если необходимо использовать библиотеку ATL- указанный перечислитель на основе контейнере STL, оно более общие для создания экземпляра CComEnumOnSTL или создать класс коллекции, возвращает перечислитель путем наследования от ICollectionOnSTLImpl.

Однако если необходимо предоставить пользовательский перечислитель (например, одно которая предоставляет интерфейсы в дополнение к интерфейсу перечислителя), то можно наследовать от этого класса. В этой ситуации, вероятно, потребуется переопределить метод Clone для реализации собственной реализации.

Иерархия наследования

Base

IEnumOnSTLImpl

Требования

Header: atlcom.h

См. также

Другие ресурсы

ATL Class Overview