为什么switch for enum接受隐式转换为0但不接受任何其他整数?
从ECMA-334(C#语言规范)开始
隐式枚举转换允许将十进制整数0转换为任何枚举类型。
枚举的默认值是0,在编译时,这就是为什么在switch语句中允许它的原因。对于以外的值0,无法在编译时确定此值是否存在于枚举中。
0
枚举(C#参考)
为新版本的枚举分配其他值,或在新版本中更改枚举成员的值,可能会导致相关源代码出现问题。通常
你尚未登录,登录后可以
和开发者交流问题的细节
关注并接收问题和回答的更新提醒
参与内容的编辑和改进,让解决方法与时俱进
联系我
602392714
清零编程群