COM_INTERFACE_ENTRY_TEAR_OFF
Exposes your tear-off interfaces.
Syntax
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
BEGIN_COM_MAP(CBeeper)
COM_INTERFACE_ENTRY(IBeeper)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY_TEAR_OFF(IID_ISupportErrorInfo, CBeeper2)
END_COM_MAP()
Requirements
Header: atlcom.h