Ja, hab ich selber erst kürzlich benutzt. Man könnte es auch einfach ausprobieren
Und wenns net tut, dann eben mit einer Forwarddeklaration (Evtl. gibts da ja Unterschiede zwischen den Delphi-Versionen)
Delphi-Quellcode:
type
TKnoten = class;
.
.
.
TKnoten = class
private
subKnoten: array[0..1] of TKnoten;
.
.
end;
Das sollte aber
IMHO nicht nötig sein. Eine Forwarddeklaration wird erst dann zwingend, wenn sich zwei Klassen
gegenseitig benutzen. Eine Klasse kennt immer nur die bereits, die im QT VOR ihr deklariert wurden.
Delphi-Quellcode:
type
TKlasse2 = class;
TKlasse1 = class
public
objekt: TKlasse2;
end;
TKlasse2 = class
public
objekt: TKlasse1;
end;
TKlasse1 kennt TKlasse2 eigentlich noch nicht, da sie noch nicht definiert wurde. Jetzt sagt man dem Compiler durch die Deklaration am Anfang, dass es definitiv eine solche Klasse geben
wird. (Er meckert auch, wenn NUR die Forwarddeklaration dort steht.)
TKlasse2 kennt TKlasse1 bereits, da vorher beschrieben. Daher hier keine FD nötig.
grusss,
dizzy
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel