IEnumOnSTLImpl选件类

此选件类定义了基于STL集合的枚举数接口。

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

参数

  • Base
    A COM 枚举器 (IEnumXXXX) 接口。

  • piid
    对枚举器接口的接口ID的指针。

  • T
    枚举器接口显示的项的类型。

  • Copy
    复制策略类选件

  • CollType
    STL容器选件类。

成员

we2f0913.collapse_all(zh-cn,VS.110).gif公共方法

名称

描述

IEnumOnSTLImpl::Clone

IEnumXXXX::Clone 的实现。

IEnumOnSTLImpl::Init

初始化枚举数。

IEnumOnSTLImpl::Next

IEnumXXXX::Next 的实现。

IEnumOnSTLImpl::Reset

IEnumXXXX::Reset 的实现。

IEnumOnSTLImpl::Skip

IEnumXXXX::Skip 的实现。

we2f0913.collapse_all(zh-cn,VS.110).gif公共数据成员

名称

描述

IEnumOnSTLImpl::m_iter

表示在集合的枚举数的当前位置的迭代器。

IEnumOnSTLImpl::m_pcollection

指针到包含项STL容器将枚举。

IEnumOnSTLImpl::m_spUnk

提供集合对象的 IUnknown 指针。

备注

IEnumOnSTLImpl 对枚举项在一个STL兼容容器存储的COM枚举器提供了接口实现。 此选件类类似于 CComEnumImpl 选件类,是根据数组的枚举器接口提供的实现。

备注

请参见 CComEnumImpl::Init 有关进一步差异的详细信息。CComEnumImplIEnumOnSTLImpl之间。

通常,不需要通过派生创建自己的枚举数选件类派生自此接口实现。 如果要使用基于STL容器的一个由ATL提供的枚举数,更为常见的创建 CComEnumOnSTL实例,或者通过创建派生返回枚举数从 ICollectionOnSTLImpl的集合选件类。

但是,因此,如果您需要提供自定义枚举数(例如,显示接口除枚举数接口)的一个,可以从此选件类派生。 在这种情况下很可能需要重写 克隆 方法提供自己的实现。

继承层次结构

Base

IEnumOnSTLImpl

要求

Header: atlcom.h

请参见

其他资源

ATL选件类概述