Ver Mensaje Individual
  #5  
Antiguo 04-02-2009
poyo poyo is offline
Miembro
 
Registrado: ene 2009
Posts: 47
Reputación: 0
poyo Va por buen camino
sí, compila desde D7. si no me equivoco, las constantes de clase (al igual que variables de clase y otras cosas) se han agregado en esa versión.
Entiendo bien lo que planteas y comparto.
El tema es que, así como cada clase tiene un puntero con una constante (Classname) y todos los objetos que heredan del Tobject heredan esa característica (la de tener una constante con su propio nombre), los muchachos de delphi quisieron hacer algo parecido.
Igual, si vamos al caso... no existe "casi" nada constante en este universo... no te olvides que la ram es volátil! :P

siguiendo con las classes del último ejemplo, sigue esto a colación:

Código Delphi [-]
function Gravedad(AClass: TPlaneta): double;
begin
  result := AClass.Gravedad;
end;

procedure test;
var
  Tierra: TTierra;
begin
  Tierra := TTierra.Create;
  showmessage(floattostr((Tierra.gravedad))); // esto devuelve 9.81;
  showmessage(floattostr(Gravedad(Tierra)));  // esto devuelve 0;
  tierra.free; //que lindo suena!

end;
Responder Con Cita