![]() |
Klassen die sich gegenseitig beinhalten
Hallo!
Angenommen ich habe folgende Klassen:
Delphi-Quellcode:
und
type
TParent = class FChildren: array of TChild; end;
Delphi-Quellcode:
Muss ich dann beide Definitionen in eine Unit schreiben:
type
TChild = class FFather: TParent; FMother: TParent; end;
Delphi-Quellcode:
Oder gibt es irgendeinen Trick, für jede Klasse eine eigene Unit zu nehmen? Mir ist bekannt, dass ich z.B. FChildren als auch "array of TObject" deklarieren kann und dann mittels "FChildren[i] as TChildren" arbeiten kann, aber das will ich nicht!
type
TChild = class; TParent = class FChildren: array of TChild; end; TChild = class FFather: TParent; FMother: TParent; end; |
Re: Klassen die sich gegenseitig beinhalten
In Delphi musst Du die in eine Unit schreiben. Wenn Du die Klassen unbedingt trennen willst, dann solltest Du eine abstrakte Basisklasse (also eine dritte) für mind. eine der Klassen deklarieren und diese dann in eine dritte Unit packen. Dann kannst Du das Gewünschte erreichen. Stellt sich nur die Frage, ob sich hier der Aufwand lohnt :?
...:cat:... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz