| title | IUnknown Implementation Classes (ATL) | Microsoft Docs | |
|---|---|---|
| ms.custom | ||
| ms.date | 11/04/2016 | |
| ms.reviewer | ||
| ms.suite | ||
| ms.technology |
|
|
| ms.tgt_pltfrm | ||
| ms.topic | article | |
| f1_keywords |
|
|
| dev_langs |
|
|
| helpviewer_keywords |
|
|
| ms.assetid | 47b69bb5-69d8-4a9c-84a8-329bdde2bb3f | |
| caps.latest.revision | 10 | |
| author | mikeblome | |
| ms.author | mblome | |
| manager | ghogen |
The following classes implement IUnknown and related methods:
-
CComObjectRootEx Manages reference counting for both aggregated and nonaggregated objects. Allows you to specify a threading model.
-
CComObjectRoot Manages reference counting for both aggregated and nonaggregated objects. Uses the default threading model of the server.
-
CComAggObject Implements IUnknown for an aggregated object.
-
CComObject Implements IUnknown for a nonaggregated object.
-
CComPolyObject Implements IUnknown for aggregated and nonaggregated objects. Using
CComPolyObjectavoids having bothCComAggObjectandCComObjectin your module. A singleCComPolyObjectobject handles both aggregated and nonaggregated cases. -
CComObjectNoLock Implements IUnknown for a nonaggregated object, without modifying the module lock count.
-
CComTearOffObject Implements IUnknown for a tear-off interface.
-
CComCachedTearOffObject Implements IUnknown for a "cached" tear-off interface.
-
CComContainedObject Implements IUnknown for the inner object of an aggregation or a tear-off interface.
-
CComObjectGlobal Manages a reference count on the module to ensure your object won't be deleted.
-
CComObjectStack Creates a temporary COM object, using a skeletal implementation of IUnknown.
Fundamentals of ATL COM Objects
Class Overview
Aggregation and Class Factory Macros
COM Map Macros
COM Map Global Functions