可能是重复问题:
Resharper: vars
为什么resharper建议使用var thing1 = 5
而不是int thing1 = 5
?它们似乎意思完全相同,只是var对于人类读者来说更难/难以理解。我很想知道编译器解释它们的方式是否有区别,或者它只是一种语法糖。
可能是重复问题:
Resharper: vars
为什么resharper建议使用var thing1 = 5
而不是int thing1 = 5
?它们似乎意思完全相同,只是var对于人类读者来说更难/难以理解。我很想知道编译器解释它们的方式是否有区别,或者它只是一种语法糖。
‘var’关键字的使用往往是有争议的。这场辩论的“权威”参考资料是http://blogs.msdn.com/b/ericlippert/archive/2011/04/20/uses-and-misuses-of-implicit-typing.aspx
var
的原因是它默认配置为这样做。进入ReSharper选项,在“代码检查”下找到“检查严重性”设置,然后在该列表中向下找到标记为“尽可能使用'var'关键字”的设置。如果使用默认设置“显示为建议”,则ReSharper将默认建议您使用var
而不是实际类型,如果:您正在构造对象(即Type x = new Type(...);
);您正在使用常量进行初始化(即int x = 5;
)。在这两种情况下,ReSharper被编程为假定您可以轻松地找到正确的类型,因此可以使用var
。如果您不想要这个功能,请更改该设置。您还可以直接在Alt + Enter下拉菜单中更改该设置,只需选择下拉菜单中的底部项目,并弹出一个对话框询问如何处理该设置。此外请注意,如果您要求ReSharper更改代码以使用var
,它将不会建议您将其变回来,但您可以通过再次按Alt + Enter并选择选项“显式指定类型”来这样做。
var
”*-使用var
-“不,不,不,使用int
!”-使用int
-* “不,使用var
!” - BoltClock