Platform SDK: DirectX |
ここでは、C++ でのアプリケーション開発について説明する。
COM に準拠するということは、DirectDraw が参照カウントを使ってオブジェクトの有効期間を管理するための一定の規則に従うことを意味する。COM の概念については、COM のドキュメントを参照すること。DirectDraw 関連の説明については、「親オブジェクトと子オブジェクトの有効期間」を参照すること。
COM の規則によると、インターフェイス ポインタを別の変数に設定したり、別のオブジェクトに渡すことによってコピーした場合、そのオブジェクトに対する別の参照になるので、変更を反映させるには、そのインターフェイスの IUnknown::AddRef メソッドを呼び出さなければならない。DirectDraw オブジェクトを操作する際には、COM の参照カウント規則に従うだけでなく、DirectDraw が参照カウントを内部で更新する仕組みを理解しておく必要がある。クリッパーやパレット関連のメソッドはそれらのオブジェクトの参照カウントのみを変更するが、一部の DirectDraw メソッドは関連するサーフェスの参照カウントも変更する (複合サーフェス フリッピング チェーン関連のメソッドの多くはこれに該当する)。このような仕組みを理解しておくと、アプリケーションの安定性が向上し、メモリ リークを防止することができる。ここでは、次の項目について記述する。
注 : DirectDraw オブジェクトの参照カウントについては、このトピックで説明するメソッド等との関係の他にも、いくつか注意しなければならないことがある。詳細については、「DirectDraw オブジェクト」の「親オブジェクトと子オブジェクトの有効期間」を参照すること。