Hallo, virtuelle Methoden sind dein Mittel der Wahl.
Delphi-Quellcode:
type
TAuto = class
public
procedure Bauen; virtual; abstract;
end;
TJeep = class(TAuto)
public
procedure Bauen; override;
end;
So kannst du jederzeit jeep.Bauen oder (jeep as TAuto).Bauen aufrufen, auch wenn du so was hast:
Delphi-Quellcode:
function IrgendeinAuto:TAuto;
begin
if Random > 0.5 then
Result := TJeep.Create
else
Result := TPKWCreate;
end;
Kannst du sowas machen:
Delphi-Quellcode:
with IrgendeinAuto do
begin
Bauen;
{Fahren;
Verschrotten;} //nur so als beispiel ;)
Free;
end;
EDIT: Wobei das, was du jetzt hier willst, mir eher sinnlos erscheibnt. So eine Klassen"hierarchie", mein ich
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1