1 段階でのオブジェクトの構築と 2 段階でのオブジェクトの構築
ペンやブラシなどのグラフィック オブジェクトを作成するには、2 つの方法があります。
1 期建設:作成し、1 つのステージは、すべてのコンス トラクターでオブジェクトを初期化します。
2 段階で構築:作成し、2 つの独立した段階で、オブジェクトを初期化します。 コンストラクターでオブジェクトを作成し、初期化関数でオブジェクトを初期化します。
2 段階で構築する方が安全です。 1 段階での構築では、引数を間違えたり、メモリを確保できないと、コンストラクターが例外をスローする場合があります。 この問題は、2 段階での構築を行うことによって回避できます。ただし、エラーのチェックが必要になります。 どちらの方法でも、オブジェクトの破棄方法は同じです。
注意
どちらの方法も、グラフィック オブジェクトだけでなく、あらゆるオブジェクトの作成に適用できます。
2 つの構築方法の例
ペン オブジェクトを構築する 2 つの方法の簡単な例を次に示します。
// One-stage
CPen myPen1(PS_DOT, 5, RGB(0,0,0));
// Two-stage: first construct the pen
CPen myPen2;
// Then initialize it
if(myPen2.CreatePen(PS_DOT, 5, RGB(0,0,0)))
{
// Use the pen
}