We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

CComAggObject Class

This class implements the IUnknown interface for an aggregated object. By definition, an aggregated object is contained within an outer object. The CComAggObject class is similar to the CComObject Class, except that it exposes an interface that is directly accessible to external clients.

   class contained
class CComAggObject :
   public IUnknown, public CComObjectRootEx
   < contained::_ThreadModel::ThreadModelNoCS >


Your class, derived from CComObjectRoot or CComObjectRootEx, as well as from any other interfaces you want to support on the object.

CComAggObject implements IUnknown for an aggregated object. CComAggObject has its own IUnknown interface, separate from the outer object's IUnknown interface, and maintains its own reference count.

For more information about aggregation, see the article Fundamentals of ATL COM Objects.

Header: atlcom.h