ICollectionOnSTLImpl Class

This class provides methods used by a collection class.

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


  • T
    A COM collection interface.

  • CollType
    An STL container class.

  • ItemType
    The type of item exposed by the container interface.

  • CopyItem
    A copy policy class.

  • EnumType
    A CComEnumOnSTL-compatible enumerator class.


This class provides the implementation for three methods of a collection interface: get_Count, get_Item, and get__NewEnum.

To use this class:

  • Define (or borrow) a collection interface that you wish to implement.

  • Derive your class from a specialization of ICollectionOnSTLImpl based on this collection interface.

  • Use your derived class to implement any methods from the collection interface not handled by ICollectionOnSTLImpl.


If the collection interface is a dual interface, derive your class from IDispatchImpl, passing the ICollectionOnSTLImpl specialization as the first template parameter if you want ATL to provide the implementation of the IDispatch methods.

  • Add items to the m_coll member to populate the collection.

For more information and examples, see ATL Collections and Enumerators.


Header: atlcom.h

See Also


ATLCollections Sample: Demonstrates ICollectionOnSTLImpl, CComEnumOnSTL, and Custom Copy Policy Classes

Other Resources

ICollectionOnSTLImpl Members

ATL Class Overview