可能重复:
ReSharper和var
在我安装了ReSharper后,它要求(通过警告)我尽可能使用var,例如
UnhandledExceptionEventArgs ue = (UnhandledExceptionEventArgs) t;
Run Code Online (Sandbox Code Playgroud)
ReSharper想把它变成
var ue = (UnhandledExceptionEventArgs) t;
Run Code Online (Sandbox Code Playgroud)
我更喜欢第一个版本,有没有理由更喜欢var?更好的性能?什么?或者它只是一种代码风格?
我有ReSharper 4.5并且到目前为止发现它非常宝贵,但我有一个顾虑;
它似乎想要隐含每个变量声明(var).
作为一个相对较新的开发人员,在这方面我应该相信ReSharper多少钱?
从Paints Tab Headers的方法中获取以下代码片段.
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
};
Run Code Online (Sandbox Code Playgroud)
Resharper希望我将所有5个改为var.我已经阅读了以下类似帖子,在C#中使用var关键字,但我想从ReSharper的角度来看.
该var类型是否与VariantVB相同?何时object可以接受任何数据类型,这两者之间有什么区别?
我已经在stackoverflow中检查了5个或更多关于var使用的帖子,但我仍然在寻找关于var用法的答案.我习惯使用Concrete类型而不是var,但我的Resharper抱怨改为var.var是类型的选择 - 即使已知具体类型?
我正在使用ReSharper帮助我发现我的代码中可能存在的错误,虽然不是错误,但它仍然抱怨我应该使用var关键字而不是在声明上显式键入变量.我个人认为,如果我写的话,对我和任何读我代码的人都会更清楚
IList<T> someVar = new List<T>();
Run Code Online (Sandbox Code Playgroud)
代替
var someVar = new List<T>();
Run Code Online (Sandbox Code Playgroud)
知道两种方式之间没有性能差异,我应该忽略这些提示还是坚持使用var关键字?
它只是一个品味的问题,还是隐含地输入变量的好习惯?
可能重复:
在C#中使用var关键字
我在Visual Studio中使用resharper.每当我创建类实例resharper建议我使用var而不是确切类型的类.为什么使用var运算符更合适?