The following classes provide support for arrays, lists, maps, and also traits methods for helping with comparisons and element access.
- CAtlArray This class implements an array object. 
- CAtlList This class provides methods for creating and managing a list object. 
- CAtlMap This class provides methods for creating and managing a map object. 
- CAutoPtrArray This class provides methods useful when constructing an array of smart pointers. 
- CAutoPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of smart pointers. 
- CAutoPtrList This class provides methods useful when constructing a list of smart pointers. 
- CAutoVectorPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of smart pointers using vector new and delete operators. 
- CComQIPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of COM interface pointers. 
- CComSafeArray This class is a wrapper for the SAFEARRAY Data Type structure. 
- CComSafeArrayBound This class is a wrapper for a SAFEARRAYBOUND structure. 
- CComUnkArray This class stores IUnknown pointers and is designed to be used as a parameter to the IConnectionPointImpl template class. 
- CDefaultCharTraits This class provides two static functions for converting characters between uppercase and lowercase. 
- CDefaultCompareTraits This class provides default element comparison functions. 
- CDefaultElementTraits This class provides default methods and functions for a collection class. 
- CDefaultHashTraits This class provides a static function for calculating hash values. 
- CElementTraits This class is used by collection classes to provide methods and functions for moving, copying, comparison, and hashing operations. 
- CElementTraitsBase This class provides default copy and move methods for a collection class. 
- CHeapPtrElementTraits This class provides methods, static functions, and typedefs useful when creating collections of heap pointers. 
- CHeapPtrList This class provides methods useful when constructing a list of heap pointers. 
- CInterfaceArray This class provides methods useful when constructing an array of COM interface pointers. 
- CInterfaceList This class provides methods useful when constructing a list of COM interface pointers. 
- CPrimitiveElementTraits This class provides default methods and functions for a collection class composed of primitive data types. 
- CRBMap This class represents a mapping structure, using a Red-Black binary tree. 
- CRBMultiMap This class represents a mapping structure that allows each key to be associated with more than one value, using a Red-Black binary tree. 
- CRBTree This class provides methods for creating and utilizing a Red-Black tree. 
- CSimpleArray This class provides methods for managing a simple array. 
- CSimpleArrayEqualHelper This class is a helper for the CSimpleArray class. 
- CSimpleArrayEqualHelperFalse This class is a helper for the CSimpleArray class. 
- CSimpleMap This class provides support for a simple mapping array. 
- CSimpleMapEqualHelper This class is a helper for the CSimpleMap class. 
- CSimpleMapEqualHelperFalse This class is a helper for the CSimpleMap class. 
- CStringElementTraits This class provides static functions used by collection classes storing CString objects. 
- CStringElementTraitsI This class provides static functions related to strings stored in collection class objects. It is similar to CStringElementTraits, but performs case-insensitive comparisons. 
- CStringRefElementTraits This class provides static functions related to strings stored in collection class objects. The string objects are dealt with as references.