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
列挙子インターフェイスのインターフェイス ID へのポインター。T
列挙子インターフェイスによって公開される項目の種類。Copy
コピー ポリシー クラス。CollType
STL コンテナー クラス。
メンバー
パブリック メソッド
名前 |
説明 |
---|---|
IEnumXXXX::Clone の実装。 |
|
列挙子が初期化されます。 |
|
IEnumXXXX::Nextの実装。 |
|
IEnumXXXX::Resetの実装。 |
|
IEnumXXXX::Skipの実装。 |
パブリック データ メンバー
名前 |
説明 |
---|---|
コレクション内の列挙子の現在の位置を表す反復子。 |
|
列挙する項目を保持し、STL コンテナーへのポインター。 |
|
コレクションを指定するオブジェクトの IUnknown のポインター。 |
解説
IEnumOnSTLImpl が列挙される項目が STL 互換性のあるコンテナーに格納されている COM 列挙子インターフェイスの実装を提供します。このクラスは、配列に基づいて列挙子インターフェイスの実装を提供する CComEnumImpl のクラスに似ています。
[!メモ]
CComEnumImpl と IEnumOnSTLImplの違いの詳細については CComEnumImpl::Init を参照してください。
通常、このインターフェイスの実装から派生することで、独自の列挙子クラスを作成する必要はありません。STL コンテナーに基づいて ATL 指定した列挙子を使用する場合は CComEnumOnSTLのインスタンスを作成または ICollectionOnSTLImplから派生することで列挙子を返すコレクションのクラスを作成するために一般的です。
ただし、(たとえば、列挙子インターフェイスの追加、インターフェイスを公開する 1 人) カスタム列挙子を提供する必要がある場合、このクラスから取得できます。独自の実装を提供するに [クローン] のメソッドをオーバーライドする必要がある場合は、この場合によく発生します。
継承階層
Base
IEnumOnSTLImpl
必要条件
ヘッダー : atlcom.h