设为首页 加入收藏

TOP

1.5 C# 4.0新特性概览
2013-10-07 14:04:08 来源: 作者: 【 】 浏览:57
Tags:1.5 4.0 特性 概览

1.5 C# 4.0新特性概览

可以说,C# 4.0的新特性的中心在于互操作性。在这方面的最重要的特性就是新的dynamic类型。通过使用dynamic,与COM对象或.NET中动态语言创建的类型之间互操作的繁琐冗长的代码就成为了历史。在互操作性方面,Visual Basic过去领先了C#一段时间。但有了C# 4.0,这样的差距已不复存在。第17章将全章介绍dynamic类型。

每次C#开发团队着手开发一个新特性的时候,他们都必须从一系列特性想法和请求中作出选择。默认方法参数值早就在考虑中了,但在C# 4.0以前从来没有得到实现。而现在,互操作性让这一特性的开发水到渠成。使用默认参数值,与COM类型的互操作将变得更容易。然而,还有另外一个特性与默认参数值相伴而生,那就是命名参数(named argument)。在C# 4.0中,你可以将参数作为命名参数传递给方法,这样参数列表中参数的顺序就是无关紧要的。这听起来就不错,当把它与默认参数值和COM互操作性一起使用的时候,就更加强大了。通常情况下,COM自动化接口含有很多可选参数的方法。使用默认参数,你不必为它们提供全部参数值。使用命名参数,你可以随意在默认参数列表中挑选你想要提供的参数。

C# 4.0中另外一个突出的新特性就是变异(variance)。新增加的上下文关键字支持,使协变及逆变泛型接口和委托的声明成为可能。通过使用in和out关键字来修饰泛型变量,你可以把接口声明为协变或者逆变。这样就允许了从IEnumerable<string>引用到IEnumerable<object>引用这样的直观隐式协变转换。这在C# 4.0之前是不可能的。这种类型的协变一直支持数组,但是,现在这种支持被打破了。第11章有一节详细说明C# 4.0中增加的协变和逆变的复杂细节。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇1.3 C# 2.0新特性概览 下一篇1.4 C# 3.0新特性概览

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: