1.2.70 $SCOPEDENUMS Управление использованием перечисляемого типа

Вверх  Предыдущий  Следующий

Логическая директива $SCOPEDENUMS управляет тем, как используется перечисляемый тип. По умолчанию (OFF), значения перечисляемого типа используются непосредственно. В состоянии ON, значения будут использоваться с уточнением имени перечисляемого типа.

Практически это означает, следующее поведение по умолчанию:

{$SCOPEDENUMS OFF}
Type
TMyEnum = (one,two,three);
 
Var
A : TMyEnum;
 
begin
A:=one;
end.

Значение можно применять непосредственно. Следущее присвоение выдаст сообщение об ошибке:

begin
A:=TMyEnum.one;
end.

Если директива SCOPEDENUMS установлен в состояние ON, то присвоение производится следующим образом:

{$SCOPEDENUMS ON}
Type
TMyEnum = (one,two,three);
 
Var
A : TMyEnum;
 
begin
A:=TMyEnum.one;
end.

т.е. значение должно иметь префикс с именем типа.