C#3.0笔记(三)var关键字与扩展方法
2009-05-18 08:28:03 来源:WEB开发网核心提示:从这篇blog开始真正开始关心3.0里面的特性,本篇主要介绍下Var关键字与扩展方法,C#3.0笔记(三)var关键字与扩展方法,初识var关键字C#3.0中为我们提供了var关键字来定义隐式化的局部变量,定义方式:vari=0;varmyBool=true;varmyString="Henllyee&quo
从这篇blog开始真正开始关心3.0里面的特性,本篇主要介绍下Var关键字与扩展方法。
初识var关键字
C#3.0中为我们提供了var关键字来定义隐式化的局部变量,定义方式:
var i = 0;
var myBool = true;
var myString = "Henllyee";
其实在使用var关键字时,编译器会根据初始化变量的变量值来推断变量的数据类型,我们可以通过IL来看下上面几句代码在编译之后的表示:
.locals init ([0] int32 i,
[1] bool myBool,
[2] string myString)
我们可以清楚的看到编译器会根据值来推断变量的类型,所以var关键字在本质上并没有改变什么。在foreach字句中也可以使用var关键字如:
var lists = new List<int>() { 1, 2, 4, 100 };
foreach (var i in lists)
{
Console.Write(i + ",", i.ToString());
}
使用var关键字的注意点
1) 隐式类型变量定义时必须要定义初始值;
2) 不能用null来初始化;
3) 不能使用var作为方法的返回值或则参数类型;
4) 不能用var定义类的成员;
赞助商链接