Partager via


CComEnumImpl, classe

Cette classe fournit l'implémentation pour une interface d'énumérateur COM dans lequel les éléments sont énumérés sont stockés dans un tableau.

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

Paramètres

  • Base
    Une interface d'énumérateur COM (IEnumXXXX).

  • piid
    Pointeur vers l'ID d'interface de l'interface d'énumérateur.

  • T
    Le type d'élément exposé par l'interface d'énumérateur.

  • Copy
    classe de stratégie de copiehomogène.

Membres

Constructeurs publics

Nom

Description

CComEnumImpl::CComEnumImpl

Constructeur.

CComEnumImpl::~CComEnumImpl

Le destructeur.

Méthodes publiques

Nom

Description

CComEnumImpl::Clone

L'implémentation de.

CComEnumImpl::Init

Initialise l'énumérateur.

CComEnumImpl::Next

L'implémentation de.

CComEnumImpl::Reset

L'implémentation de.

CComEnumImpl::Skip

L'implémentation de.

Données membres publiques

Nom

Description

CComEnumImpl::m_begin

Pointeur vers le premier élément du tableau.

CComEnumImpl::m_dwFlags

Indicateurs de copie passées via Init.

CComEnumImpl::m_end

Pointeur vers l'emplacement immédiatement au delà de le dernier élément du tableau.

CComEnumImpl::m_iter

Un pointeur vers l'élément actuel dans le tableau.

CComEnumImpl::m_spUnk

Le pointeur d' IUnknown de l'objet en fournissant la collection est énumérée.

Notes

CComEnumImpl fournit l'implémentation pour une interface d'énumérateur COM dans lequel les éléments sont énumérés sont stockés dans un tableau. Cette classe est analogue à la classe d' IEnumOnSTLImpl , qui fournit une implémentation d'une interface d'énumérateur sur un conteneur STL.

Notes

Pour plus d'informations sur d'autres différences entre CComEnumImpl et IEnumOnSTLImpl, consultez CComEnumImpl::Init.

En général, vous n'aurez pas besoin de créer votre propre classe d'énumérateur par dérivation de cette implémentation d'interface. Si vous souhaitez utiliser un énumérateur ATL fourni en fonction d'un tableau, il est plus courant de créer une instance de CComEnum.

Toutefois, si vous devez fournir un énumérateur personnalisé (par exemple, un exposant des interfaces en plus de l'interface d'énumérateur), vous pouvez dériver de cette classe. Dans cette situation, il est probable que vous deviez substituer la méthode de CComEnumImpl::Clone pour fournir votre propre implémentation.

Pour plus d'informations, consultez Collections et énumérateurs ATL.

Hiérarchie d'héritage

Base

CComEnumImpl

Configuration requise

Header: atlcom.h

Voir aussi

Référence

IEnumOnSTLImpl, classe

CComEnum, classe

Autres ressources

Vue d'ensemble de la classe ATL