Resharper:vars
为什么Resharper希望您将大多数变量更改为var类型而不是代码中的实际类型?
这只是一个选择。 你可以禁用它:
ReSharper – >选项 – >代码检查 – >检查严重性 – >代码冗余 – >尽可能使用’var’关键字:将其更改为“不显示”
还有上下文(灯泡)选项,它将带您进入每个方向 – 这是在ReSharper – >选项 – >语言 – > C# – >上下文操作 – >“用’var’替换显式类型声明”
我看了哈迪哈里里的video,他在那里展示了Resharper 6.x. 他的推理是,如果你强迫用户使用“var”,你实际上是强迫他以更有意义的方式命名变量,这样所有的免费精选名字大全都是可读的并且更有意义。
默认情况下,它将为此类型的“绿色波浪形”声明:
Person p = new Person(); ^^^^^^
因为重复。
当可以推断时,它还会建议(小绿色下划线)变量:
Person p = repository.GetPerson(1); ¯¯¯
在这种情况下,由于GetPerson方法的返回类型,它可以被推测。
正如Jon Skeet所述,您可以在resharper的选项中禁用这些建议。
回答你的问题…因为JetBrains的某个人认为这是“首选”方式。
要改变它,请按照Jon的回答。 此外,您还可以在ReSharper选项的“代码清理”部分下执行代码清理(我经常使用)时更改ReSharper的行为。 设置为“使用显式类型”。
这是关于它的JetBrains代码检查维基的解释: http : //confluence.jetbrains.net/display/ReSharper/Use+%27var%27+keyword+when+initializer+explicitly+declares+type
如果您看到右侧的课程,则不需要在左侧看到它。 如果类名很长,它还可以节省空间并减少代码。 就个人而言,我不使用var作为简单类型,如string,int等,但确实使用它来为var dictionary = new Dictionary
来节省空间。
我认为这表明你们两种方式。 如果您有一个显式类型 – 您可以将其更改为var。 如果你有var – 可以将它改为显式。 只是为了让你更快,如果你认为它是合适的当然。
例如,对于循环变量,当迭代一个集合时,使用变量可能是好的,等等,当类型为“隐式”时(当然,当Resharper建议它时,编译器总是隐含的)并且它不存在不会使代码的可读性降低。 此外,我喜欢它来缩短一些声明,这些声明可能会随着generics而变长。 比如,IList(IDictionary(SomeType))myVar = List(IDictionary(SomeType))()如果在赋值的左侧写“var”,则不会松动太多。
(用尖括号替换parantheses;)
当然,我会尽量小心使用变量,以提高可读性,反之亦然。
对我来说,这绝对物有所值……(即使我必须自己支付)。 但它可以减慢你的VS. 如果您有5000行代码的文件,它可能会变得非常慢。
然而,我仍然没有得到的是为什么我是团队中唯一使用它的人……
Vars有助于使代码在方法中更具可读性,尤其是在使用generics时。
正如乔恩所说,这只是一种选择。
上述就是C#学习教程:Resharper:vars分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1014242.html