¡Buen día a todos!
Cita:
Empezado por marto
...De la primera, Delphi va a la dirección de memoria de la referencia, da por supuesto que es de la clase que le indicas e intenta acceder a la dirección del método o la propiedad en cuestión. Si la referencia no es de ese tipo, saltará un Access Violation...
|
Con respecto a lo anterior debo decir que no necesariamente se elevará una excepción, y no necesariamente de tipo Access Violation, aunque regularmente puede darse el caso. Esto es porque el acceso a un miembro del objeto puede resultar en un acceso
válido de memoria, aunque no sea un acceso válido de estructura. Depende de la estructura de cada clase y de qué realice la propiedad o método que está siendo referenciado.
A final de cuentas, sólo aconsejo (y utilizo) el molde de tipo
Clase (Objeto) cuando estoy seguro de que la referencia será siempre válida. Esto sucede por ejemplo cuando hacemos referencia a un elemento de la propiedad Components de una forma, y sabemos que dicho componente es un TEdit:
Código:
TEdit (Components [4]).Text := 'Prueba';
Espero esto sea de utilidad. Seguimos en contacto.
Al González
.