为什么在C#switch语句中,对于在多种情况下使用的变量,仅在第一种情况下才声明它?
例如,以下内容引发错误“此范围中已经定义了一个名为'variable'的局部变量”。
switch (Type)
{
case Type.A:
string variable = "x";
break;
case Type.B:
string variable = "y";
break;
}
但是,根据逻辑,如果类型为,则不应单击初始声明Type.B。switch语句中的所有变量是否都在单个作用域中,并且是否在处理任何逻辑之前创建/分配了它们?
当年话下
相关分类