“VAR”如果我有一个字符串,我把它初始化为的String.Empty,然后使用字符串初始化
var mystring=string.Empty;
或
string mystring = string.Empty;
使上述2个应该是更好的性能WRT或者其他的考虑?
“VAR”如果我有一个字符串,我把它初始化为的String.Empty,然后使用字符串初始化
var mystring=string.Empty;
或
string mystring = string.Empty;
使上述2个应该是更好的性能WRT或者其他的考虑?
var
是隐式。它以C#编程语言中的任何类型进行别名。别名类型由C#编译器确定。
var
关键字具有相同的性能。 它不影响运行时行为。
您的两个代码都会生成相同的IL代码;
IL_0000: nop
IL_0001: ldsfld string [mscorlib]System.String::Empty
IL_0006: stloc.0
IL_0007: ret
它们都编译为相同的IL代码,因此在代码执行期间没有性能差异。
但是,第二个是更具可读性,我会这样。
恭喜,我的风格总是在我可以的时候使用'var'。我认为我们不同意,但推断一个人在任何基础上比另一个更好,而不是个人风格是假设的。 –
我应该避免在初始化简单类型时使用'var',比如'int','double'或'string',但正如你所说的,我只是一个意见。 – MarcinJuraszek
我也是一个巨大的'var'迷:我不想关心类型,除非我必须,因为编译器足够聪明以允许我。 – Alex
完全一样。 – I4V
[var(C#Reference)](http://msdn.microsoft.com/en-us/library/bb383973.aspx) –
这是一回事,所以没有区别 – V4Vendetta