Registriert seit: 25. Okt 2005
Ort: Bretten
320 Beiträge
Delphi 10.4 Sydney
|
Vererbungsprobleme
1. Apr 2008, 11:07
Irgendwie steh ich bei der Vererbung grad auf dem Schlauch.
Ich habe eine Klasse von TObjectlist abgeleitet und (unter anderem) die Add-Methode überschrieben.
TMyObjectList = class(TObjectList)
function Add(AObject: TMyObject): Integer;reintroduce; virtual;
end;
function TMyObjectList.Add(AObject: TMyObject): Integer;
begin
inherited Add(AObject);
MachSonstNochWas;
end;
Ich übergebe meine Liste an eine Funktion einer anderen Klasse, die ein Objekt erzeugt und der Liste hinzufügt.
procedure TAnotherclass.Tuwas(ObjectList: TObjectList);
MyObject:=TMyObject.Create;
Objectlist.Add(MyObject);
An dieser Stelle wird jedoch die Add-Funktion der Basisklasse Objectlist aufgerufen, nicht die Add-Funktion meiner abgeleiteten Klasse, die SonstNochWas erledigen sollte.
Nur wenn ich in meiner procedure Tuwas aus der TObjectlist eine TMyObjectlist mache, funktioniert das ganze.
Ich will aber meine TAnotherclass nicht von meiner TMyObjectlist abhängig machen, die soll auch mit einer TObjectlist funktionieren.
Wie ist dieses Problem zu lösen?
Gruß Rainer
|