【发布时间】:2010-06-08 16:55:35
【问题描述】:
在 Delphi 的 case 语句中使用类型常量最优雅(或最不丑)的方式是什么?
也就是说,假设对于这个问题,您需要声明一个类型化常量,如
const
MY_CONST: cardinal = $12345678;
...
那么Delphi编译器就不会接受
case MyExpression of
MY_CONST: { Do Something };
...
end;
但你需要写
case MyExpression of
$12345678: { Do Something };
...
end;
容易出错,难以更新,也不优雅。
有没有什么技巧可以让编译器插入常量的值(最好通过检查源代码中const 下的常量值,但也可以在运行时查找值)?我们在这里假设您不会在运行时更改“常量”的值。
【问题讨论】:
-
取出“:红衣主教”。问题解决了。您不需要使用 TYPE DECLARATIONS,事实上您也不需要使用它们。
-
是的,我知道。但是我明确地写了“假设这个问题你需要声明一个类型化的常量”......
标签: delphi case-statement