DECLARE_ONLY_AGGREGATABLE
オブジェクトを集約する必要があることを指定します。
DECLARE_ONLY_AGGREGATABLE(
x
)
パラメーター
- x
[入力] 集約だけが可能なものとして定義するクラス オブジェクトの名前。
解説
オブジェクトを集約されないオブジェクトとして CoCreate しようとすると、DECLARE_ONLY_AGGREGATABLE によってエラー (E_FAIL) が発生します。
既定では、CComCoClass は、オブジェクトが集約できることを指定する DECLARE_AGGREGATABLE マクロを含んでいます。 この既定の動作をオーバーライドするには、DECLARE_ONLY_AGGREGATABLE をクラス定義に含めます。
使用例
class ATL_NO_VTABLE COnlyAggClass :
public CComObjectRoot,
public CComCoClass<COnlyAggClass, &CLSID_OnlyAggClass>
{
public:
COnlyAggClass()
{
}
DECLARE_ONLY_AGGREGATABLE(COnlyAggClass)
};
必要条件
**ヘッダー:**atlcom.h