次の方法で共有


IEnumOnSTLImpl クラス

更新 : 2007 年 11 月

このクラスは、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 コンテナ クラス。

解説

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

we2f0913.alert_note(ja-jp,VS.90).gifメモ :

CComEnumImplIEnumOnSTLImpl の違いについては、CComEnumImpl::Init の説明を参照してください。

通常は、このインターフェイスの実装から独自の列挙子クラスを派生させて作成する必要はありません。ATL (Active Template Library) で用意されている、STL コンテナに基づいた列挙子を使用する場合、CComEnumOnSTL クラスのインスタンスを作成するか、列挙子を返すコレクション クラスを ICollectionOnSTLImpl から派生させて作成する方法がより一般的です。

ただし、カスタム列挙子 (列挙子インターフェイスのほかにもインターフェイスを公開する列挙子など) を用意する必要がある場合は、このクラスから派生クラスを作成できます。その場合は、独自の実装を提供できるように、Clone メソッドをオーバーライドする必要があります。

必要条件

ヘッダー : atlcom.h

参照

その他の技術情報

IEnumOnSTLImpl のメンバ

ATL クラスの概要