C#版本主要特性
要点:
· C#2 泛型;
· C#3 LINQ,Lambda表达式;
· C#4 动态类型dynamic;
· C#5 异步函数
C#2 泛型
如List,泛型主要解决了类型安全的问题,还可以避免产生额外的类型转换的代码。
C#3
-
LINQ
全称 Language Integrated Query,语言集成查询。语法类似SQL,主要用于数据查询,不单单可用于数据库,也可用于查询XML。 -
Lambda表达式
大大简化了代码,增加代码可读性。
例:x=>x*5; (x,y)=>{ return x*y; }
C#4 dynamic
如果一个表达式是dynamic类型,那么可以调用其方法、访问其属性、将其作为方法的参数进行传递等。例如,在同一进程中运行python代码。
ScriptEngine engine = Python.CreateEngine();
ScriptScope scope = engine.ExecuteFile("Find.py");
dynamic results = scope.GetVariable("results");
foreach(dynamic result in results)
{
Console.WriteLine(result.attr);
}
C#5 异步函数
可以用来中断代码执行,而不阻塞线程。
关键字 async, await,两者配套使用。