集約オブジェクトの作成
更新 : 2007 年 11 月
集約では、外側の IUnknown へのポインタを内部オブジェクトに渡すことによって、IUnknown 呼び出しの処理を代行させます。
集約オブジェクトを作成するには
クラス オブジェクトに IUnknown ポインタを追加し、コンストラクタで IUnknown ポインタを NULL に初期化します。
FinalConstruct をオーバーライドして、集約を作成します。
手順 1 で定義した IUnknown ポインタを COM_INTERFACE_ENTRY_AGGREGATE マクロの 2 番目のパラメータとして使用します。
FinalRelease をオーバーライドして、IUnknown ポインタを解放します。
メモ : |
---|
FinalConstruct の中で集約オブジェクトのインターフェイスを使用したり解放したりする場合は、クラス オブジェクトの定義に DECLARE_PROTECT_FINAL_CONSTRUCT マクロを追加する必要があります。 |