class A { A() { var x = 5; // this is allowed }
var _x = 5; // the compiler is unhappy }
我猜编译器必须能够像为本地变量一样推导成员变量的类型。那有什么区别呢?
埃里克·利珀特(Eric Lippert)在这里回答了您的问题: 为什么字段上没有变量?
基本上,对于一般情况,它需要重写C#编译器,因为它当前进行类型推断的方式不适用于var字段变量分配的周期。
var