FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#6
|
||||
|
||||
Solo que en el caso de los constructores, estos no son virtuales, por lo que no hay que poner override en su declaración.
Siempre, lo normal, dentro del constructor es llamar a un constructor de la clase padre, que a su vez llamará a otro de su ancestro y así hasta llegar al constructor de TObject, que es el que hace la reserva y la inicialización de memoria. Podes hacer algo como: Código:
Type MiClase = Class(OtraClase) public Constructor Create(Parametro1, Parametro2 : Tipo); Destructor destroy; override; end; Lo normal luego, es hacer algo como: Código:
Constructor MiClase.Create(Parametro1, Parametro2 : Tipo); Begin // lo primero es llamar a un constructor de la clase padre inherited Create(ConSusParametros); // luego, la inicialización normal del objeto End; Destructor MiClase.Destroy; Begin // primero, libero memoria, recursos, notificaciones, etc. CualquierCosa; // por último, llamo al destructor del ancestro... inherited; End; Es una convención llamar al constructor Create, pero no es necesario.... lo podes llamar como querras. En realidad, también al destructor, pero insisto, si lo vas a integrar a la VCL, también debes llamarlo Destroy. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
|
|