Hi Leute.
Suche nun schon seit Stunden für einen Lösungsansatz, leider bisher ohne wirklichen Erfolg, bzw. ohne einen Ansatz der mir so richtig gefällt.
Und zwar möchte ich eine Struktur aufbauen, welche eine noch undefinierte Anzahl an Klassen enthält. Diese würde ich gerne, der Übersicht wegen, in separate Units auslagern. Nun gibt es aber das Problem, das diese sich gegenseitig "kennen" sollen, wodurch aber das Problem von zirkulären Referenzen entstehen würde.
Als Beispiel ziehe mal folgendes Szenario heran. Es existiert eine Klasse
TEngine und es existieren mehrere Managerklassen. Nun soll natürlich die Klasse
TEngine auch auf die einzelnen Manager zugreifen können und diese sollen natürlich auch die Klasse
TEngine kennen um darauf zugreifen zu können.
Delphi-Quellcode:
unit Engine;
interface
uses Manager1;
// geht ja nicht
type
TEngine =
class(TObject)
private
FManager1: TManager1;
protected
public
property Manager1: TManager1
read FManager1;
end;
Delphi-Quellcode:
unit Manager1;
interface
uses Engine;
// geht ja nicht
type
TManager1 =
class(TObject)
private
FEngine: TEngine;
protected
public
constructor Create(e: TEngine);
end;
...
implementation
TManager1.Create(e: TEngine);
begin
FEngine := e;
end;
Freue mich auf eure Antworten und Vorschläge.
Greets