Thema: Delphi Klassen Forward Problem

Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#10

Re: Klassen Forward Problem

  Alt 5. Jun 2005, 11:42
Hallo MasterBB,

hier mal das, was ich auf die Schnelle rausgefunden habe. Hier mal ein Beispiel das nicht funktioniert (D7):
Delphi-Quellcode:
TBar = class;
TFoo = class;

TFoo = class(TBar) //<-- Fehler hier
end;

TBar = class(TObject)
   FFoo: TFoo;
end;
Der Fehler "Class TBar is not yet completely defined" tritt in der markierten Zeile auf. Ich kann es mir nur damit erklaeren, dass ich nicht von einer nicht vollstaendig deklarierten Klasse ableiten kann. Dieses Beispiel funtioniert naemlich:

Delphi-Quellcode:
TBar = class;
TFoo = class;

TBar = class(TObject)
   FFoo: TFoo;
end;

TFoo = class(TBar)
end;
Wiederum sind die Klassen alphabetisch forward-deklariert, aber die engueltige Deklarationsreihenfolge ist umgekehrt. Versuch das mal zu beruecksichtigen. Du musst auch bei der endgueltigen Deklaration eine gewisse Reihenfolge einhalten, aber ich wuerde versuchen es so zu machen, dass ich keine forward declares brauche

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat