Partilhar via


Construção de objetos em um e dois estágios

Você pode optar entre duas técnicas para criar objetos gráficos, como penalidades e escovas:

  • construção de uma fase: Construir e inicializar o objeto está em fase, todas com o construtor.

  • Construção de dois estágios: Construir e inicializar o objeto em duas fases separadas. O construtor cria o objeto e uma função de inicialização para inicializá-lo.

A construção de dois estágios sempre é mais segura. Na construção de uma fase, o construtor pode gerar uma exceção se você fornecer argumentos incorretos ou a alocação de memória falha. Esse problema pode ser evitado pela construção de dois estágios, embora você tem que verificar se há falha. Em ambos os casos, destruir o objeto é o mesmo processo.

Dica

Essas técnicas se aplicam a criar todos os objetos, não apenas objetos gráficos.

Exemplo de ambas as técnicas de compilação

O seguinte exemplo mostra breve ambos os métodos de construir um objeto de forma:

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

Que você deseja saber mais?

Consulte também

Conceitos

Objetos gráficos