相关疑难解决方法(0)

C#中的案例声明块级声明空间

有没有理由我错过了case语句中的块不被视为块级声明空间?

我尝试时不断收到错误(变量已经声明)

case x:
  var someVariable = 42;
break;
case y: 
   var someVariable = 40;
break;
Run Code Online (Sandbox Code Playgroud)

但我能做到

case x:
   try{var someVariable = 42;}catch{} 
break;
case y: 
    try{var someVariable = 40;}catch{}
break;
Run Code Online (Sandbox Code Playgroud)

如果C#允许通过语句,那就没有意义,但事实并非如此,我想不出你可以在case语句中声明变量并在该块之外使用它的场景.

c# language-design switch-statement

7
推荐指数
3
解决办法
1679
查看次数

标签 统计

c# ×1

language-design ×1

switch-statement ×1