Jedno- i dwuetapowa konstrukcja obiektów
Masz do wyboru dwie techniki tworzenia obiektów graficznych, takich jak pióra i pędzle:
Jeden etap budowy: konstrukcja i zainicjować obiektu w jednej fazie, wszystkie z konstruktora.
Dwa etapy budowy: konstrukcja i zainicjować obiektu w dwóch oddzielnych etapów.Konstruktor tworzy obiekt i błędu funkcji inicjowania inicjuje on.
Zawsze bezpieczniej jest dwa etapy budowy.Jeden etap budowy konstruktora może wyjątek, jeśli podajesz Niepoprawne argumenty lub alokacja pamięci nie powiedzie się.Mimo, że trzeba sprawdzić awarii przez dwa etapy budowy, unika się tego problemu.W obu przypadkach zniszczenie obiektu jest ten sam proces.
[!UWAGA]
Techniki te dotyczą tworzenia żadnych obiektów, nie tylko graficzny obiektów.
Przykład obu technik budowlanych
W poniższym przykładzie krótki pokazano obie metody konstruowania obiektu pióra:
// 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
}