Freigeben über


IEnumOnSTLImpl Class

Diese Klasse definiert eine Enumeratorschnittstelle auf Grundlage einer STL-Auflistung.

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

Parameter

  • Base
    Eine COM-Enumerator (IEnumXXXX)-Schnittstelle.

  • piid
    Ein Zeiger auf den Schnittstellen-ID der Enumeratorschnittstelle.

  • T
    Der Typ des Elements verfügbar gemacht die Enumeratorschnittstelle.

  • Copy
    Kopierrichtlinienklasse.

  • CollType
    Eine STL-Containerklasse.

Mitglieder

Öffentliche Methoden

Name

Description

IEnumOnSTLImpl::Clone

Die Implementierung von IEnumXXXX::Clone.

IEnumOnSTLImpl::Init

Initialisiert den Enumerator.

IEnumOnSTLImpl::Next

Die Implementierung von IEnumXXXX::Next.

IEnumOnSTLImpl::Reset

Die Implementierung von IEnumXXXX::Reset.

IEnumOnSTLImpl::Skip

Die Implementierung von IEnumXXXX::Skip.

Öffentliche Datenmember

Name

Description

IEnumOnSTLImpl::m_iter

Der Iterator, der der aktuellen Position des Enumerators innerhalb der Auflistung darstellt.

IEnumOnSTLImpl::m_pcollection

Ein Zeiger auf STL-Container, der die aufgelistet werden Elemente enthalten.

IEnumOnSTLImpl::m_spUnk

Der IUnknown Zeiger des Objekts die Auflistung angibt.

Hinweise

IEnumOnSTLImpl stellt die Implementierung für eine COM-Enumeratorschnittstelle bereit, in der die Elemente, die aufgelistet werden, in einem STL-kompatiblen Container gespeichert werden. Diese Klasse ist der CComEnumImpl-Klasse analog, die eine Implementierung für eine Enumeratorschnittstelle auf einem Array bereitstellt.

Hinweis

Siehe CComEnumImpl::Init für Informationen über weitere Unterschiede zwischen CComEnumImpl und IEnumOnSTLImpl.

In der Regel müssen Sie nicht, um eine eigene Enumeratorklasse erstellen, indem Sie aus dieser Schnittstellenimplementierung berechnen. Wenn Sie einen ATL-angegebenen Enumerator auf Grundlage eines STL-Container verwenden möchten, ist es häufig, eine Instanz von CComEnumOnSTL zu erstellen, oder eine Auflistungsklasse erstellen, die einen Enumerator zurückgibt, indem von ICollectionOnSTLImpl abgeleitet.

Wenn Sie jedoch einen benutzerdefinierten Enumerator bereitstellen müssen (beispielsweise, einer, Schnittstellen zusätzlich zur Enumeratorschnittstelle verfügbar gemacht), können Sie diese Klasse ableiten. In dieser Situation ist es wahrscheinlich, dass Sie die Klon-Methode überschreiben müssen, um eine eigene Implementierung bereitzustellen.

Vererbungshierarchie

Base

IEnumOnSTLImpl

Anforderungen

Header: möchten

Siehe auch

Weitere Ressourcen

ATL Class Overview