次の方法で共有


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 コンテナー クラス。

メンバー

we2f0913.collapse_all(ja-jp,VS.110).gifパブリック メソッド

名前

説明

IEnumOnSTLImpl::Clone

IEnumXXXX::Clone の実装。

IEnumOnSTLImpl::Init

列挙子が初期化されます。

IEnumOnSTLImpl::Next

IEnumXXXX::Nextの実装。

IEnumOnSTLImpl::Reset

IEnumXXXX::Resetの実装。

IEnumOnSTLImpl::Skip

IEnumXXXX::Skipの実装。

we2f0913.collapse_all(ja-jp,VS.110).gifパブリック データ メンバー

名前

説明

IEnumOnSTLImpl::m_iter

コレクション内の列挙子の現在の位置を表す反復子。

IEnumOnSTLImpl::m_pcollection

列挙する項目を保持し、STL コンテナーへのポインター。

IEnumOnSTLImpl::m_spUnk

コレクションを指定するオブジェクトの IUnknown のポインター。

解説

IEnumOnSTLImpl が列挙される項目が STL 互換性のあるコンテナーに格納されている COM 列挙子インターフェイスの実装を提供します。このクラスは、配列に基づいて列挙子インターフェイスの実装を提供する CComEnumImpl のクラスに似ています。

[!メモ]

CComEnumImplIEnumOnSTLImplの違いの詳細については CComEnumImpl::Init を参照してください。

通常、このインターフェイスの実装から派生することで、独自の列挙子クラスを作成する必要はありません。STL コンテナーに基づいて ATL 指定した列挙子を使用する場合は CComEnumOnSTLのインスタンスを作成または ICollectionOnSTLImplから派生することで列挙子を返すコレクションのクラスを作成するために一般的です。

ただし、(たとえば、列挙子インターフェイスの追加、インターフェイスを公開する 1 人) カスタム列挙子を提供する必要がある場合、このクラスから取得できます。独自の実装を提供するに [クローン] のメソッドをオーバーライドする必要がある場合は、この場合によく発生します。

継承階層

Base

IEnumOnSTLImpl

必要条件

ヘッダー : atlcom.h

参照

その他の技術情報

ATL クラスの概要