Cita:
Empezado por Kandorf
2-Para crear un objeto de mi clase tengo que llamar al constructor con:
Código:
Objeto:=TClase.Create;
Yo pensaba que con declarar el objeto ya valía teniendo en la clase un constructor llamado
Código:
constructor TClase.Create;
|
Tomates con morcillas, en la clase estas declarando un constructor que se supone que hereda de un constructor de una clase anterior a la tuya (la clase mínima de la que heredar algo es TObject). Simplemente se declara de nuevo el constructor para realizar alguna tarea que requiera tu nueva clase al ser creada. Ten en cuenta que al crear una clase, se llama a su constructor y por eso se llama primero al constructor de tu clase.
Con "Objeto:= TClase.Create" estas llamando al constructor de tu clase, el cual llama al constructor heredado recursivamente, cuyo último fin es asignar a Objeto(puntero) una dirección de memoria que se corresponde a la clase creada.
Tu suposición de que los objetos se crean automáticamente sólo con declararlos en las variables por tener definidos en su estructura interna un constructor y un destructor es errónea.