Possible Duplicate:
Why does ReSharper want to use 'var' for everything?
我有 ReSharper 4.5,到目前为止发现它非常有用,但我有一个担忧;
它似乎想让每个变量声明都隐式(var)。
作为一个相对较新的开发人员,在这方面我应该信任 ReSharper 多少?
从绘制选项卡标题的方法中获取以下代码片段。
TabPage currentTab = tabCaseNotes.TabPages[e.Index];
Rectangle itemRect = tabCaseNotes.GetTabRect(e.Index);
SolidBrush fillBrush = new SolidBrush(Color.Linen);
SolidBrush textBrush = new SolidBrush(Color.Black);
StringFormat sf = new StringFormat
{
Alignment = StringAlignment.Center,
LineAlignment = StringAlignment.Center
};
Resharper 希望我将所有 5 个更改为 var。我读过以下类似的帖子,Use of var keyword in C# ,但我想从 ReSharper 的角度了解。
最佳答案
Resharper 主要致力于帮助您重构代码,而 var
关键字通常使重构变得更加容易。例如,如果任何这些函数的返回值更改为兼容类型,则您无需更改任何代码。因此,现在重构 tabCaseNotes
类型变得更加容易。
就我个人而言,我通常倾向于保留前两行,因为我喜欢在声明变量的行的某个地方看到显式列出的变量的类型名称。如果有的话,我可能会寻找一个接口(interface)来代替,这样我也可以获得与 var
关键字相同的“通用性”,而不会丢失任何重要的可读类型信息。但是,我肯定会使用 var
来表示 fillBrush
、textBrush
和 sf
。
关于.net - ReSharper 和 var,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/737835/