分享方式:


一階段和兩階段的物件建構

您可以選擇兩種建立繪圖物件的技術,例如畫筆和筆刷:

  • 一階段建構:以一個階段建構 和初始化 物件,全部都是使用建構函式。

  • 兩個階段建構:以兩個不同的階段建構 和初始化 物件。 建構函式會建立 物件,而初始化函式會初始化它。

兩個階段的建設總是更安全的。 在單階段建構中,如果您提供不正確的引數或記憶體配置失敗,建構函式可能會擲回例外狀況。 雖然您必須檢查失敗,但兩個階段建構可以避免這個問題。 不論是哪一種情況,終結物件都是相同的程式。

注意

這些技術適用于建立任何物件,而不只是繪圖物件。

這兩種建構技術的範例

下列簡短範例顯示建構畫筆物件的這兩種方法:

// 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
}

您想要深入瞭解什麼

另請參閱

圖形物件