在C#中声明变量

可能重复:
在C#中使用var关键字

嗨,我在C#中很新,

我想知道声明变量的最佳做法。

我知道在声明变量(隐式)时可以使用VAR(显式声明)或DataType。

我会感谢您的意见


我总是试着给我的变量声明提供一些有用的名字,它们描述了它们是什么,骆驼式的,在班级的顶部声明。

大多数人会说使用var是最好的。 它降低了未来维护的复杂性,例如,如果更改特定方法的返回类型,则不必去改变从该方法分配给每个变量的类型,因为您已经使用var声明变量。

这种类型的问题已经在stackoverflow上多次讨论过了。 例如,请参阅:在C#中使用var关键字


这是相反的方式。 这是一个明确的类型:

int x = 42;

这是一个隐式类型:

var x = 42;

您必须在必须使用隐式声明时(即使用匿名类型时)或代码更易读。

例:

// anonymous type
var y = new { item: "asdf" };

// avoid repeating long type names
var z = new System.Text.StringBuilder();

就个人而言,我很高兴使用var myVariable = new ReferenceType(); 因为我知道我要获得一个类型的变量,并且必须再次指定类型是重复。 有时你需要具体时声明即: IComplexThing var = new ComplexThing();

为了交换数组和集合,然后foreach(项目中的var项)是OK,因为我再次知道我将获得什么类型。

我通常尝试使用MyType result = from x in queryable where x=>x.Id == id select x; 因为该类型在查询之前是已知的,但是对于像var result = from x in queryable where x=>x.Id == id select new { Id, Name, Description}; 该类型在查询时生成并且不知道。 我试图远离那种类型的查询。

链接地址: http://www.djcxy.com/p/53817.html

上一篇: Declare variable in C#

下一篇: When to use var and when to use Strongly types?