Eine andere Lösung ist eben die von mir angesprochene. Die bevorzuge ich eher. Wir benutzen normalerweise auch eine Datei pro Interface und eine pro Klasse. Mit der Lösung funktioniert das problemlos, egal ob mit Interface oder Klasse:
Delphi-Quellcode:
TCustomDogOwner = class
public
procedure Schimpfen;
end;
TDog = class
private
FOwner: TCustomDogOwner;
public
property Owner: TCustomDogOwner read FOwner write FOwner;
end;
TDogOwner = class
private
FDog: TDog;
public
property Dog: TDog read FDog write FDog;
end;