Costruzione di oggetti in una e due fasi

È possibile scegliere tra due tecniche per la creazione di oggetti grafici, ad esempio penne e pennelli:

  • Costruzione a uno stadio: costruisce e inizializza l'oggetto in una fase, tutto con il costruttore.

  • Costruzione a due fasi: costruire e inizializzare l'oggetto in due fasi separate. Il costruttore crea l'oggetto e una funzione di inizializzazione lo inizializza.

La costruzione a due stadi è sempre più sicura. In una costruzione a una fase, il costruttore potrebbe generare un'eccezione se si specificano argomenti non corretti o l'allocazione di memoria non riesce. Questo problema viene evitato dalla costruzione a due fasi, anche se è necessario verificare la presenza di errori. In entrambi i casi, l'eliminazione dell'oggetto è lo stesso processo.

Nota

Queste tecniche si applicano alla creazione di oggetti, non solo agli oggetti grafici.

Esempio di entrambe le tecniche di costruzione

Nell'esempio seguente vengono illustrati entrambi i metodi di costruzione di un oggetto penna:

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

Cosa vuoi sapere di più su

Vedi anche

Oggetti grafici