Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Você pode escolher entre duas técnicas para criar objetos gráficos, como canetas e pincéis:
Construção em um estágio: construa e inicialize o objeto em um estágio, tudo com o construtor.
Construção em dois estágios: Construa e inicialize o objeto em dois estágios separados. O construtor cria o objeto e uma função de inicialização o inicializa.
A construção em duas fases é sempre mais segura. Na construção de etapa única, o construtor pode lançar uma exceção no caso de fornecer argumentos incorretos ou a alocação de memória falhar. Esse problema é evitado pela construção em dois estágios, embora você tenha que verificar se há falhas. Em ambos os casos, destruir o objeto é o mesmo processo.
Observação
Estas técnicas aplicam-se à criação de quaisquer objetos, não apenas objetos gráficos.
Exemplo de ambas as técnicas de construção
O breve exemplo a seguir mostra os dois métodos de criação de um objeto de caneta.
// 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
}