Tengo una duda fundamental en Delphi. Cuando guardo ningún componente en tiempo de diseño, digamos por ejemplo TADOConnectuion y el botón de clic, incluso escribo siguiente código a continuación, no consigo ningún error:Fundamental de "Gratis" en Delphi
begin
ADOConnection.Free; //No error
ADOConnection.Free; //No error
ADOConnection.Free; //No error
end;
Pero si creo el mismo objeto en tiempo de ejecución como follwos I obtener "Violación de acceso ..." error
begin
ADOConnection := TADOConnection.create(self);
ADOConnection.Free; //No error
ADOConnection.Free; //Getting an "Access Violation..." error
end;
consigo el mismo error aunque se crea el objeto de la siguiente manera:
ADOConnection := TADOConnection.create(nil);
Sólo me gustaría saber la razón de tal comportamiento, es decir, ¿Por qué no hay ningún error cuando guardo el componente en el momento del diseño?
relacionadas: [¿por qué no FreeAndNil * realmente * nil mi objeto?] (http://stackoverflow.com/questions/8036388/delphi-why-doesnt-freeandnil-really-nil-my-object) – CodesInChaos
Vishal, no es útil (de hecho, se desaconseja) para agregar fórmulas educadas a sus preguntas y respuestas aquí en SO. – mghie