Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

Re: Der Varianttyp und der Geschwindigkeitsverlust

  Alt 16. Jan 2010, 17:01
dann nimm doch TObject oder definiere dir einen Basisvorfahren für deine Klassen,
dann muß nichts umgewandelt werden ... ein Objektreferenz ist und bleibt so NUR eine Objektreferenz

so oder so wirst du ja intern eh per IS, bzw. AS die genaue Klasse prüfe müssen


Delphi-Quellcode:
procedure Save(DataObj: TObject);
begin
  if DataObj is TKategorie then begin
    ...
  end else if DataObj is TArtikel then begin
    ...

Delphi-Quellcode:
type TBaseObject = class end;
  TKategorie = class(TBaseObject)
    ...
  end;
  TArtikel = class(TBaseObject)
    ...
  end;

procedure Save(DataObj: TBaseObject);
begin
  if DataObj is TKategorie then begin
    ...
  end else if DataObj is TArtikel then begin
    ...
$2B or not $2B
  Mit Zitat antworten Zitat