Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.

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


A COM collection interface.


An STL container class.


The type of item exposed by the container interface.


A copy policy class.


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

Community Additions

© 2015 Microsoft