Enumerators
Enumerators provide a consistent way to iterate through a collection of objects. For example, you can define a simple enumerator to access strings in a collection. A complex enumerator can access records from a database.
This article describes:
Implementing enumerators in ATL and COM.
Using CComEnum, _Copy, CComIEnum, and CComEnumImpl to create enumerators in ATL.
ATL does not define any standard objects for enumerators. However, it does provide you with the infrastructure for building them easily using the CComEnum and _Copy templates.
COM implements enumerators as separate objects that usually support a single interface, IEnumxxxx, where xxxx is the type that is being enumerated. Standard enumerator types defined by COM include: , , , , , , , and .