Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#3

AW: Unit-übergreifende Sichtbarkeit von {$Define …} - geht das?

  Alt 25. Jul 2023, 23:10
Typen und Konstanten kann man als Alias in Unit1 "neu" deklarieren und sie somit aus UnitX in die Unit2 durchreichen.

Methoden, Property-Typen, Methoden-Result-Typen usw., welche über einen Vorfahren aus UnitX in Unit1 abgeleitet wurden, lassen sich indirekt zugreifen. (so lange man nicht diesen Typen eines Parameter/Result direkt verwenden will)




Es gibt ein {$IF Declared(...)} , aber damit kannst du nur auf etwas (Variable/Konstante/Funktion/Typ/...) prüfen, welches sich in deinem Scope befindet.
Also eine Unit in einer anderen Unit (egal ob interface oder implementation) findet sich somit nicht.


DEFINEs sind nicht modulübergreifend.
Ausnahme, wenn sie als Compiler-Option rein kommen. Oder überall via INCLUDE-Datei.

Was einfach ginge, zur Laufzeit, nach einem Export oder einer Ressource suchen, welcher über die andere Unit rein kommt.
Oder über die erweiterte RTTI etwas davon finden.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (25. Jul 2023 um 23:20 Uhr)
  Mit Zitat antworten Zitat