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
, Reset
et 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++.
Sections connexes
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 CComEnumOnSTL
l’implémentation de classes de stratégie de ICollectionOnSTLImpl
copie personnalisées.