IEnumOnSTLImpl 類別
這個類別會定義以 STL 集合的列舉值介面。
template <
class Base,
const IID* piid,
class T,
class Copy,
class CollType
>
class ATL_NO_VTABLE IEnumOnSTLImpl :
public Base
參數
Base
COM 列舉值 (IEnumXXXX) 介面。piid
out 列舉值介面的介面 ID 的指標。T
列舉值介面公開的項目型別。Copy
複製原則類別。CollType
STL 容器類別。
Members
公用方法
名稱 |
描述 |
---|---|
IEnumXXXX::Clone 的實作。 |
|
初始化列舉值。 |
|
IEnumXXXX::Next 的實作。 |
|
IEnumXXXX::Reset 的實作。 |
|
IEnumXXXX::Skip 的實作。 |
公用資料成員
名稱 |
描述 |
---|---|
表示集合中位於列舉值目前位置的 Iterator。 |
|
一個指標保留項目 STL 容器中列舉型別。 |
|
提供集合中物件的 IUnknown 指標。 |
備註
IEnumOnSTLImpl 為列舉中的項目是以 STL 相容的容器中的 COM 列舉值介面的實作。 這個類別 (Class) 類似 CComEnumImpl 類別,以根據陣列的列舉值介面的實作。
注意事項 |
---|
請參閱 CComEnumImpl::Init 有關在其他差異的詳細資料。 CComEnumImpl 和 IEnumOnSTLImpl。 |
通常,您不需要從衍生以建立自己的列舉型別類別從這個介面實作。 如果您想要使用根據 STL 容器之 ATL 提供的列舉值,但更常用的 CComEnumOnSTL建立執行個體,或是可以取得傳回列舉值從 ICollectionOnSTLImpl的集合類別。
不過,因此,如果您需要提供自訂列舉值 (例如,公開介面的列舉值介面以外的 ID),您可以從這個類別衍生。 在這個案例中的可能需要覆寫 複製品 方法提供自己的實作。
繼承階層架構
Base
IEnumOnSTLImpl
需求
Header: atlcom.h