![]() |
Circular unit reference
Hallo,
wenn ich mit build mein Programm erstelle, bekomme ich diese Fehlermeldung um die Ohren gehauen: [DCC Fatal Error] basicList.pas(5): F2047 Circular unit reference to 'dbInterface' Die Unit basicList sieht so aus:
Delphi-Quellcode:
unit basicList;
interface uses contnrs, listTypes, dbInterface; Die Unit dbInterface sieht so aus:
Delphi-Quellcode:
Ich sehe nicht, dass hier eine zirkulare Referenz besteht.
unit dbInterface;
interface uses Dialogs, DB, DBAccess, Uni, postgreSQLUniProvider, lab, listTypes, rack, device, deviceType, powerUnitType, powerUnit, deviceGroup, globalConst; In der Unit dbInterface wird die Unit basicList nicht eingebunden. Stehe da auf dem Schlauch.. Grüße Klaus |
AW: Circular unit reference
Der Kreis muss ja nicht zwingend aus nur 2 Units bestehen. Du müsstest also mal alle uses-Abschnitte dieser units durchgehen ( Dialogs, DB, DBAccess, Uni, postgreSQLUniProvider, lab, listTypes,
rack, device, deviceType, powerUnitType, powerUnit, deviceGroup, globalConst ) und gucken, ob da vielleicht irgendwo basicList eingebunden wird. |
AW: Circular unit reference
Zitat:
Unit A uses Unit B Unit B uses Unit C Unit C uses Unit A |
AW: Circular unit reference
Müsste er nicht bei "Projekt erzeugen" an die problematische Stelle springen?
|
AW: Circular unit reference
Zitat:
Mit der oben genannten Fehlermeldung. Die anderen Units werde ich auch überprüfen... Hoffe ich finde etwas ... Danke und Grüße Klaus |
AW: Circular unit reference
Die Unit basicList dürfte eigentlich die Unit dbInterface gar nicht benützen, denn "basic" deutet schon im Namen an dass in der Unit eine Basisklasse steckt.
Erst in einer abgeleiteten Klasse kommt dann der Zugriff auf Datenbanken ins Spiel. Es gibt auch andere Möglichkeiten die Umklammerung der gegenseitigen Abhängkeiten aufzulösen. Auf jeden Fall zeigt eine Circular Unit Reference an dass es Probleme beim Design der Klassen gibt. Wenn man nur die Circular Unit Reference beseitigt aber nicht etwas tiefer gräbt ist es relativ wahrscheinlich dass man später wieder Probleme bekommt. |
AW: Circular unit reference
sodele,
es war in etwa so wie bcvs es beschrieben hat. Ich werde dann im Klassendesign etwas ändern. In der basicList wollte ich alle Funktionen kapseln welche auch die abgeleiteten Klassen zwingend benötigen. Danke für die Denkanstösse. Grüße Klaus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:57 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