Edw*_*uay 11 c# var conventions
似乎越来越多我读过的C#代码使用var类型标识符:
foreach (var itemChange in ItemChanges)
{
//...
}
Run Code Online (Sandbox Code Playgroud)
而不是明确说明类型:
foreach (ItemChange itemChange in ItemChanges)
{
//...
}
Run Code Online (Sandbox Code Playgroud)
即使知道类型.
我仍在使用后一个显式版本,因为我认为稍后阅读它会更快地了解变量的类型,而不是使用var.
但是否有任何技术理由使用其中一种?
Ada*_*lph 21
没有技术原因.如果在编译时无法推断出类型,那么代码将无法编译.
您说得对,有些情况可能更好地使用显式类型进行可读性,例如
var obj = SomeMethod(); // what's the type? you'd have to inspect SomeMethod()
SomeClass obj = SomeMethod(); // the type is obvious
Run Code Online (Sandbox Code Playgroud)
但是使用var的其他情况很有意义,例如
var obj = new SomeClass(); // the type is obvious
SomeClass obj = new SomeClass(); // the duplication of type is unnecessary
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
763 次 |
| 最近记录: |