您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么switch for enum接受隐式转换为0但不接受任何其他整数?

为什么switch for enum接受隐式转换为0但不接受任何其他整数?

ECMA-334(C#语言规范)开始

隐式枚举转换允许将十进制整数0转换为任何枚举类型。

枚举的认值是0,在编译时,这就是为什么在switch语句中允许它的原因。对于以外的值0,无法在编译时确定此值是否存在于枚举中。

枚举(C#参考)

为新版本的枚举分配其他值,或在新版本中更改枚举成员的值,可能会导致相关源代码出现问题。通常

其他 2022/1/1 18:14:14 有447人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶