Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
COM_INTERFACE_ENTRY_TEAR_OFF
Collapse the table of content
Expand the table of content

COM_INTERFACE_ENTRY_TEAR_OFF

Exposes your tear-off interfaces.

COM_INTERFACE_ENTRY_TEAR_OFF( iid, x )

Parameters

iid
[in] The GUID of the tear-off interface.
x
[in] The name of the class implementing the interface.

Remarks

A tear-off interface is implemented as a separate object that is instantiated every time the interface it represents is queried for. Typically, you build your interface as a tear-off if the interface is rarely used, since this saves a vtable pointer in every instance of your main object. The tear-off is deleted when its reference count becomes zero. The class implementing the tear-off should be derived from CComTearOffObjectBase and have its own COM map.

See COM_INTERFACE_ENTRY Macros for remarks about COM map entries.

Example

From the ATL sample COMMAP:

BEGIN_COM_MAP(COuter)
   ...
   COM_INTERFACE_ENTRY_TEAR_OFF(IID_ITearOff1, CTearOff1)
   ...
END_COM_MAP()

See Also

COM Map Macros | ATL Macros

Show:
© 2015 Microsoft