The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.
DECLARE_NOT_AGGREGATABLE
Specifies that your object cannot be aggregated.
DECLARE_NOT_AGGREGATABLE(
x
)
- x
[in] The name of the class object you are defining as not aggregatable.
DECLARE_NOT_AGGREGATABLE causes CreateInstance to return an error (CLASS_E_NOAGGREGATION) if an attempt is made to aggregate onto your object.
By default, CComCoClass contains the DECLARE_AGGREGATABLE macro, which specifies that your object can be aggregated. To override this default behavior, include DECLARE_NOT_AGGREGATABLE in your class definition.
Example
class ATL_NO_VTABLE CNoAggClass : public CComObjectRoot, public CComCoClass<CNoAggClass, &CLSID_NoAggClass> { public: CNoAggClass() { } DECLARE_NOT_AGGREGATABLE(CNoAggClass) };
Requirements
Header: atlcom.h
Show: