为什么c#需要"var"标识符?

And*_*yuk 4 c# syntax scala

可能重复:
var关键字有什么意义?

为什么c#需要类型推断类型变量的"var"标识符?

我的意思是把它关掉是什么问题:

a = 1;
//vs
var a = 1;
Run Code Online (Sandbox Code Playgroud)

在Scala中阅读编程:

"类型变量"语法不能简单地忽略类型 - 将不再有标记来启动定义.

但是把它留在a:Intint a之间有什么不同呢?

Mar*_*tos 16

想到的至少一个原因是它强制程序员声明他们引入新变量的意图,而不是分配给现有变量.这使编译器能够检测到许多常见的编码错误.