Ted*_*ith 20 c# enums casting exception
以下代码不会产生异常,而是将值4传递给tst.任何人都可以解释这背后的原因吗?
public enum testing
{
a = 1,
b = 2,
c = 3
}
testing tst = (testing)(4);
Run Code Online (Sandbox Code Playgroud)
Meh*_*ari 33
在C#中,与Java不同,不检查枚举.您可以拥有基础类型的任何值.这就是检查输入非常重要的原因.
if(!Enum.IsDefined(typeof(MyEnum), value))
throw new ArgumentOutOfRangeException();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7502 次 |
| 最近记录: |