当类型已知时,是否有任何技术原因在 C# 中使用或不使用 var?

2023-11-25

我读到的 C# 代码似乎越来越多地使用var类型标识符:

foreach (var itemChange in ItemChanges)
{
   //... 
}

代替明确地说明类型:

foreach (ItemChange itemChange in ItemChanges)
{
   //... 
}

即使类型已知。

我仍在使用latter显式版本只是因为我认为稍后阅读它的人会比使用 var 更快地理解变量的类型。

但有没有技术的为何使用其中之一?


没有技术原因。如果在编译时无法推断类型,则代码将无法编译。

您说得对,在某些情况下,为了提高可读性,使用显式类型可能会更好,例如

var obj = SomeMethod(); // what's the type? you'd have to inspect SomeMethod()
SomeClass obj = SomeMethod(); // the type is obvious

但在其他情况下使用 var 是非常有意义的,例如

var obj = new SomeClass(); // the type is obvious
SomeClass obj = new SomeClass(); // the duplication of type is unnecessary
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当类型已知时,是否有任何技术原因在 C# 中使用或不使用 var? 的相关文章

随机推荐