Construcción de objetos en una fase y en dos fases
Puede elegir entre dos técnicas para crear objetos gráficos, como lápices y pinceles:
construcción de la Uno- fase: Cree e inicialice el objeto en una fase, todas con el constructor.
Construcción de dos pasos: Cree e inicialice el objeto en dos fases independientes. El constructor crea el objeto y una función de inicialización inicializarlo.
La construcción de dos pasos siempre es más segura. En la construcción de la uno- fase, el constructor podría producir una excepción si proporciona argumentos incorrectos o se produce un error en la asignación de memoria. Ese problema es evitó la construcción de dos fases, aunque tenga que comprobar error. En cualquier caso, la destrucción de objetos es el mismo proceso.
Nota |
---|
Estas técnicas se aplican a crear cualquier objeto, no sólo objetos gráficos. |
Ejemplo de las técnicas de Both Construction
El ejemplo abreviado siguiente muestra ambos métodos de construir un objeto pen:
// 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
}