码迷,mamicode.com
首页 > 其他好文 > 详细

匿名方法

时间:2014-10-29 18:56:42      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   color   os   ar   for   sp   

匿名方法是c#2.0引入的特性,并通过c#3.0的Lambda表达式得到发展,(请看我的另一片关于Lambda的整理).

匿名方法类似于lambda表达式,但是没有以下特性:

  1. 确定类型的参数
  2. 表达式语法(匿名方法必须是语句块)
  3. 在指定到Expression<T>时,编译成表达式树的功能

写您名方法的方法是:delegate关键字后面跟参数声明(可选),然后是方法体.以下以委托为例:

bubuko.com,布布扣
delegate int Transformer(int i);
View Code

以下是实现和调用匿名方法:

bubuko.com,布布扣
Transformer sqr=delegate(int x){return x*x;};
Console.WriteLine(sqr(3));//9
View Code

第一行代码等于下面的lambda表达式:

bubuko.com,布布扣
Transformer sqr=(int x)=>{return x*x};
//简写成
Transformer sqr=x>x*x;
View Code

完全省略参数是匿名方法----即使委托需要这些参数.

匿名方法

标签:style   blog   http   io   color   os   ar   for   sp   

原文地址:http://www.cnblogs.com/valiant1882331/p/4059969.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!