我爱Aspx >> Asp.Net >> Visual C# 3.0 新特性概览(一)在发布visual Studio 2005和C#2.0之后,微软公司又马不停蹄的展示了人们所期望的C#的下一代版本:C# 3.0。尽管C# 3.0并没有标准化,微软还是在PDC(专业程序员会议)发布了一个预览版本,因此心急的程序员可以看到一些所期望的特性,这也是本文所讨论的主要内容:
·隐式类型本地变量
·匿名变量
·扩展方法
·对象和Collection初始化符
·Lambda表达式
·查询表达式
·表达式树
隐式类型本地变量
C# 3.0引进了一个新的关键字叫做"Var"。Var允许你声明一个新变量,它的类型是从用来初始化符变量的表达式里隐式的推断出来的。也就是说,如下的表达式是有效的格式:
var i = 1;
这一行使用了1来初始化符变量i。注意这里i被强类型到整型,它不是一个对象或者VB6的变量,也不带有其他对象或者变量的负载。
为了保证使用var关键字进行声明的变量的强类型特性,C#3.0要求你将赋值(初始化符)放到和声明(声明符)的同一行。同样,初始化符必须是一个表达式,不能是一个对象或者collection初始化符,也不能为null。如果多个声明符对同一个变量存在,那么它们必须在编译时被视作相同类型。
另一方面,隐式类型数组,可以使用一点不同的格式,如下所示:
var intArr = new[] {1,2,3,4} ;
上面一行的代码将声明intArr为int[].
var关键字允许你使用匿名类型的实例,因而这些实例就是静态类型的。所以,当你创建一个包含一组数据的对象的实例的时候,你不必要预先定义一个类可以同时支持这个结构和在一个静态类型变量里的数据。
匿名变量
C# 3.0使得你可以灵活的创建一个类的实例,而无需先写这个类的代码。所以你可以这样写代码:
new {hair="black", skin="green", teethCount=64}
Ҷƪл˵?
C#中调用Windows API的要点[05-20]
c#收取邮件[05-20]
用Visual C#实现P2P应用程序[05-20]
用Visual C#实现局域网点对点通..[05-20]
C#下用P2P技术实现点对点聊天[05-20]
C#如何读取QQ纯真IP数据库[05-20]
C#怎样才能实现窗体最小化到托盘..[05-20]
全面剖析C#正则表达式[05-20]
C#里面全角和半角的自由转换[05-20]
C#操作注册表[05-20]
利用HttpRequest登录到某个网站,..[05-20]
C#中调用Windows API的要点[05-20]
MODEM AT指令集[05-20]
玩转Modem~AT指令篇- -[05-20]
[翻译]JavaScript和Macromedia F..[05-20]
c#收取邮件[05-20]
在asp.net2.0中用WebPart代替Pla..[05-20]
Javascript 弹出新窗口并向窗口中..[05-20]
基于框架的可隐藏导航栏[05-20]
PhotoShop热键大全[05-20]