Partage via


ICollectionOnSTLImpl, classe

Cette classe fournit des méthodes utilisées par une classe de collection.

Syntaxe

template <class T, class CollType, class ItemType, class CopyItem, class EnumType>
class ICollectionOnSTLImpl : public T

Paramètres

T
Interface de collection COM.

CollType
Classe de conteneur de bibliothèque standard C++.

Type d'élément
Type d’élément exposé par l’interface conteneur.

CopyItem
Classe de stratégie de copie.

Enumtype
Classe d’énumérateur compatible CComEnumOnSTL.

Membres

Méthodes publiques

Nom Description
ICollectionOnSTLImpl ::get__NewEnum Retourne un objet énumérateur pour la collection.
ICollectionOnSTLImpl ::getcount Retourne le nombre d’éléments dans la collection.
ICollectionOnSTLImpl ::get_Item Retourne l’élément demandé de la collection.

Membres de données publics

Nom Description
ICollectionOnSTLImpl ::m_coll Collection.

Notes

Cette classe fournit l’implémentation de trois méthodes d’une interface de collection : getcount, get_Item et get__NewEnum.

Pour utiliser cette classe :

  • Définissez (ou empruntez) une interface de collection que vous souhaitez implémenter.

  • Dérivez votre classe d’une spécialisation basée ICollectionOnSTLImpl sur cette interface de collection.

  • Utilisez votre classe dérivée pour implémenter toutes les méthodes de l’interface de collection non gérées par ICollectionOnSTLImpl.

Remarque

Si l’interface de collection est une interface double, dérivez votre classe d’IDispatchImpl, en passant la ICollectionOnSTLImpl spécialisation en tant que premier paramètre de modèle si vous souhaitez qu’ATL fournisse l’implémentation des IDispatch méthodes.

  • Ajoutez des éléments au membre m_coll pour remplir la collection.

Pour plus d’informations et d’exemples, consultez collections ET énumérateurs ATL.

Hiérarchie d'héritage

T

ICollectionOnSTLImpl

Spécifications

En-tête : atlcom.h

ICollectionOnSTLImpl ::getcount

Cette méthode retourne le nombre d’éléments de la collection.

STDMETHOD(getcount)(long* pcount);

Paramètres

pcount
[out] Nombre d’éléments dans la collection.

Valeur de retour

Valeur HRESULT standard.

ICollectionOnSTLImpl ::get_Item

Cette méthode retourne l’élément spécifié de la collection.

STDMETHOD(get_Item)(long Index, ItemType* pvar);

Paramètres

Index
[in] Index de base 1 d’un élément dans la collection.

pvar
[out] Élément correspondant à Index.

Valeur de retour

Valeur HRESULT standard.

Notes

L’élément est obtenu en copiant les données à la position spécifiée dans m_coll à l’aide de la méthode de copie de la classe de stratégie de copie passée en tant qu’argument de modèle dans la ICollectionOnSTLImpl spécialisation.

ICollectionOnSTLImpl ::get__NewEnum

Retourne un objet énumérateur pour la collection.

STDMETHOD(get__NewEnum)(IUnknown** ppUnk);

Paramètres

ppUnk
[out] Pointeur IUnknown d’un objet énumérateur nouvellement créé.

Valeur de retour

Valeur HRESULT standard.

Notes

L’énumérateur nouvellement créé conserve un itérateur sur la collection d’origine, m_coll(donc aucune copie n’est faite) et contient une référence COM sur l’objet de collection pour s’assurer que la collection reste active alors qu’il existe des énumérateurs en attente.

ICollectionOnSTLImpl ::m_coll

Ce membre contient les éléments représentés par la collection.

CollType m_coll;

Voir aussi

Exemple ATLCollections
Vue d’ensemble de la classe