WEB开发网
开发学院软件开发C语言 c# 4.0新特性一览 阅读

c# 4.0新特性一览

 2009-03-02 08:17:59 来源:WEB开发网   
核心提示: in的意思正好相反,是说IComparer<T>中的T只会被用在输入中,c# 4.0新特性一览(5),这样就可以将IComparer<object>安全的转为IComparer<string>类型,前者被称为Co-Variance,Ruby之类语言的控制

in的意思正好相反,是说IComparer<T>中的T只会被用在输入中,这样就可以将IComparer<object>安全的转为IComparer<string>类型。

前者被称为Co-Variance, 后者就是Contra-Variance。

.Net4.0中使用out/in声明的Interface:

System.Collections.Generic.IEnumerable<out T>
System.Collections.Generic.IEnumerator<out T>
System.Linq.IQueryable<out T>
System.Collections.Generic.IComparer<in T>
System.Collections.Generic.IEqualityComparer<in T>
System.IComparable<in T>

Delegate:

System.Func<in T, …, out R>
System.Action<in T, …>
System.Predicate<in T>
System.Comparison<in T>
System.EventHandler<in T>

Compiler as a Service

4.0中增加了与编译器相关的API,这样就可以将字符串作为代码动态编译执行,跟javascript好像。

Video的最后,Anders做了一个很酷的demo,大概只用了二三十行代码,就实现了在控制台中直接执行C#语句,定义并调用函数,动态创建windows form,添加button等功能,看起来完全不逊色于Python,Ruby之类语言的控制台。

沉寂了n年之后,CLR终于要出新版本了,这回Jeffrey Richter大侠没有借口不出新版的CLR via C#了吧:)

Reference:

视频: http://channel9.msdn.com/pdc2008/TL16/

PPT:http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL16.pptx

示例代码及文档(New features in C# 4.0):http://code.msdn.microsoft.com/csharpfuture

上一页  1 2 3 4 5 

Tags:特性 一览

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接