Partage via


Collections et énumérateurs ATL

A collection est un objet COM qui fournit une interface qui permet d’accéder à un groupe d’éléments de données (données brutes ou autres objets). Une interface qui suit les normes pour fournir l’accès à un groupe d’objets est appelée interface de collection.

Au minimum, les interfaces de collection doivent fournir une Count propriété qui retourne le nombre d’éléments de la collection, une Item propriété qui retourne un élément de la collection en fonction d’un index et une propriété qui retourne un _NewEnum énumérateur pour la collection. Si vous le souhaitez, les interfaces de collection peuvent fournir Add et Remove méthodes pour permettre l’insertion ou la suppression d’éléments dans ou de suppression de la collection, ainsi qu’une Clear méthode pour supprimer tous les éléments.

Il enumerator s’agit d’un objet COM qui fournit une interface permettant d’itérer des éléments dans une collection. Les interfaces d’énumérateur fournissent un accès en série aux éléments d’une collection via quatre méthodes requises : Next, , Skip, Resetet Clone.

Vous pouvez en savoir plus sur les interfaces d’énumérateur en lisant du contenu de référence tel que l’interface IEnumString .

Dans cette section

Collections ATL et classes d’énumérateurs
Décrit brièvement et fournit des liens vers les classes ATL qui vous aideront à implémenter des collections et des énumérateurs.

Principes de conception pour les interfaces d’énumérateurs et de collections
Présente les différents principes de conception derrière chaque type d’interface.

Implémentation d’une collection basée sur la bibliothèque standard C++
Exemple étendu qui vous guide tout au long de l’implémentation d’une collection standard C++.

ATL
Propose des liens vers des rubriques conceptuelles traitant de la programmation à l'aide de la bibliothèque ATL (Active Template Library).

Exemple ATLCollections
Exemple illustrant l’utilisation et CComEnumOnSTLl’implémentation de classes de stratégie de ICollectionOnSTLImpl copie personnalisées.

Voir aussi

Concepts