C#中 Var关键字
Var是C#3.5新增的一个关键字,用来代替某些具体的类型,由编译器自动判断变量类型,编译器可以根据变量的初始化值“推断”变量的类型。
其主要作用有2个:
1.代替具体类型,实现快速编程的隐式类型用法,常见在foreach便历中,实质是VS编译器给我们提供的一个语法糖。
2.和new 一起使用,来实现一个匿名类型,用来代替需要预先创建的实体类,灵活高效。
隐式类型用法:
var a=1;//int a=1;
var b="1";//string a="1";
var c=DateTime.Today;//DateTime c=DateTime.Today;
在定义一个具体类型的变量时,可以利用var来代替实际的真正类型,如上,//前面与后面的代码完全等价,编译器会自动根据后面的变量值的类型帮我们转换成最匹配的类型,属于一个与语法糖。
注意点:
1.无法使用var来定义一个全局变量,只能定义在方法的内部(因为预先不可知,所以预先不可置)
2.不能用来定义函数的签名,包括返回值,参数类别
3.在定义变量的时候,必须先给值,不能为null,也不能只定义不给值。
4.一旦一个变量被定义成var类型,并确定了指定的类型以后,不能再给这个变量其他类型的值。例: var a="1";a=1;(错误:无法将类型“XX”隐式转换成“YY”)
编程是个人爱好