各个分支是什么? (ReSharper建议)

时间:2011-06-21 15:11:42

标签: refactoring resharper

我正在使用ReSharper来重构我的代码,ReSharper的一个建议是使用相应的分支而不是始终为真的if语句。

如果我有

if (myVar != null){
   //code
}

我应用相应的分支代码如下

{
   //code
}

这是if语句的捷径吗? 这是用来做什么的? 可爱的括号和没有什么区别?

提前致谢。

2 个答案:

答案 0 :(得分:10)

该块必须留在那里,否则语义会发生变化。

删除大括号时,在分支块内声明的变量范围会发生变化。可能存在冲突/隐藏(lambda)变量,这会导致意外。

要移除大括号,请将光标置于任一大括号上,然后按Alt-Enter,'删除大括号'

重新引入大括号:选择代码块Ctrl-Alt-J, 7以包围块:)

答案 1 :(得分:0)

在ReSharper 6.0中,如果你内部没有变量声明,这个命令也会删除大括号。