Bereichsabhängige Aufzählungen (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Liste der Delphi-Compiler-Direktiven - Index


Typ

Option

Syntax

{$SCOPEDENUMS ON} oder {$SCOPEDENUMS OFF}

Vorgabe

{$SCOPEDENUMS OFF}

Bereich

Lokal



Bemerkungen

Die Direktive $SCOPEDENUMS aktiviert oder deaktiviert die Verwendung von bereichsabhängigen Aufzählungen im Delphi-Quelltext. $SCOPEDENUMS wirkt sich nur auf Definitionen von neuen Aufzählungen aus und steuert nur das Hinzufügen der Wertesymbole von Aufzählungen zum globalen Bereich.

Im Status {$SCOPEDENUMS ON} sind Aufzählungen bereichsabhängig, und Aufzählungswerte werden nicht dem globalen Bereich hinzugefügt. Zum Festlegen eines Member einer bereichsabhängigen Aufzählung müssen Sie den Typ der Aufzählung einbeziehen. Zum Beispiel:


type
  TFoo = (A, B, Foo);
  {$SCOPEDENUMS ON}
  TBar = (A, B, Bar);
  {$SCOPEDENUMS OFF}

begin
  WriteLn(Integer(Foo));
  WriteLn(Integer(A)); // TFoo.A
  WriteLn(Integer(TBar.B));
  WriteLn(Integer(TBar.Bar));
  WriteLn(Integer(Bar)); // Fehler
end;

Beachten Sie bitte, dass auch Folgendes gültig ist:

 Writeln(Integer(TFoo.A));

Obwohl TFoo nicht mit $SCOPEDENUMS ON deklariert wurde, kann der Wert A dennoch explizit anhand des Aufzählungsnamens aufgelöst werden.

Siehe auch