作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 ReSharper 来帮助我发现代码中可能存在的错误,虽然不是错误,但它一直提示我应该使用 var
关键字而不是在声明中显式键入变量。就我个人而言,我认为对我和任何阅读我的代码的人来说,如果我写
IList<T> someVar = new List<T>();
var someVar = new List<T>();
var
关键词?
最佳答案
我认为至少有两个原因。
首先是DRY principle的事情: 不要重复。如果将来您决定从 List<>
更改变量类型至 Stack<>
或 LinkedList<>
,然后用 var
你必须在一个地方改变,否则你必须在两个地方改变。
二、泛型类型声明可能很长。 Dictionary<string, Dictionary<int, List<MyObject>>>
任何人?这不适用于简单的 List<T>
,但是对于不同的对象类型,您不应该有两种代码样式。
关于.net - ReSharper 和隐式类型变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6716768/
我是一名优秀的程序员,十分优秀!