   Derived objects, variable return
  Hi, I''d like to know how I can implement the following:TBase = class    ..  public    ..    function ReturnValue : ?; virtual; abstract;    ..  end;TInteger = class(TBase)    ..  public    ..    function ReturnValue : integer; override;    ..  end;TString = class(TBase)    ..  public    ..    function ReturnValue : string; override;    ..  end;TSingle = class(TBase)    ..  public    ..    function ReturnValue : single; override;    ..  end;... you get the idea... - how can I have a generic initial "return function" in which the return type is specified by a descendent? 
  Only way todo that is to use variants(or a do it your self version). Thats basicly all you can do. 