Einzelnen Beitrag anzeigen

sarte

Registriert seit: 23. Mai 2008
Ort: Australien
66 Beiträge
 
Delphi 7 Enterprise
 
#1

Frage beim Vererben, wenn der Datentyp sich ändert.

  Alt 4. Mai 2009, 15:31
Hallo Leute,
ich habe ein kleines Problem beim Vererben.

Delphi-Quellcode:
type
  TKnoten = class
  protected
    left: TKnoten;
    right: TKnoten;
    Data: Integer;
  public
    [...]
    function GetLeft:TKnoten; virtual;
    function GetRight:TKnoten; virtual;
    function GetData:Integer; virtual;
  end;


type
  TAVLKnoten = class(TKnoten)
    protected
      balance: integer;
    public
      procedure setBalance(B: Integer); virtual;
      [...]
  end;
Wenn ich jetzt mit einer Instanz(vom Typ TAVLKnoten) eine Methode z.b. GetLeft aufrufen möchte, meckert der Compiler, da der Typ nicht von TAVLKnoten ist, sondern TKnoten. Eine Möglichkeit wäre es, gar nicht zu vererben... aber ich bin schreibfaul und möchte gern Vererben^^
Wie macht man das jetzt am Besten?
Sarte
  Mit Zitat antworten Zitat