我有以下枚举
public enum TESTENUM
{
Value1 = 1,
Value2 = 2
}
Run Code Online (Sandbox Code Playgroud)
然后我想用它来比较我有的整数变量,如下所示:
if ( myValue == TESTENUM.Value1 )
{
}
Run Code Online (Sandbox Code Playgroud)
但是为了做这个测试,我必须按如下方式强制转换枚举(或者可能将整数声明为类型枚举):
if ( myValue == (int) TESTENUM.Value1 )
{
}
Run Code Online (Sandbox Code Playgroud)
有没有办法可以告诉编译器枚举是一系列整数,这样我就不必执行此操作或重新定义变量?
cod*_*zen 12
不需要.您需要转换枚举值.如果您不想强制转换,请考虑使用具有常量int值的类:
class static EnumLikeClass
{
public const int Value1 = 1;
public const int Value2 = 2;
}
Run Code Online (Sandbox Code Playgroud)
但是,这有一些缺点; 缺乏类型安全是使用该类型的一个重要原因enum.
| 归档时间: |
|
| 查看次数: |
3434 次 |
| 最近记录: |