Bonjour,
Je me retrouve face à un petit problème.
J'ai un project avec une 20aine de classes, sur une même unité.
Or ces classes étant dépendantes les unes des autres, j'obtiens souvent le message d'erreur "liaisons croisées" dans mes clauses uses.
Comment m'en sortir?
Voici un exemple de mes structures :
---
unit u_main;
interface
Type
TMainClass = class
Public
Object1 : TObject1;
Object2 : TObject2;
End;
----
unit u_object1;
interface
uses
u_main;
Type
TObject1 = class;
Protected
Parent : TMainClass;
Public
Constructur Create(aParent : TMainClass);
End;
----
unit u_object2;
interface
uses
u_main;
Type
TObject2 = class;
Protected
Parent : TMainClass;
Public
Constructur Create(aParent : TMainClass);
End;
---
la seule solution que j'envisage serait de dériver TObject1 et TObject2 d'une même classe, comme ci dessous :
---
unit u_main;
interface
uses
u_object1, u_object2;
Type
TMainClass = class
Public
Object1 : TObject1;
Object2 : TObject2;
End;
----
unit u_object1;
interface
uses
u_ObjDeriv;
Type
TObject1 = class(TObjDeriv)
..
End;
----
unit u_object2;
interface
uses
u_ObjDeriv;
Type
TObject1 = class(TObjDeriv)
..
End;
----
unit u_ObjDeriv;
interface
uses u_main;
type
TObjDeriv = class
Protected
FParent : TMainClass;
Public
Constructor Create(aParent : TMainClass);
End;
---
y'a-t-il une autre solution à envisager?