http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 12324|回复: 3

[Bran学习笔记] C#匿名方法和Lambda表达式

[复制链接]
发表于 2016-1-3 19:28:28 | 显示全部楼层 |阅读模式

一:匿名方法
       匿名方式是C#2.0引入的一个特性,它允许开发者声明自己的函数代码而无须使用委托函数。
       C#为委托提供一种机制,可以为委托定义匿名方法,匿名方法没有名称,编译器会指定一个名称,在匿名方法内部不能访问不完全的代码,匿名方法中不能使用跳转语句跳转到该匿名方法的外部,也不能跳转到该方法的内部,也不能在匿名方法外部使用的ref和out参数。但可以使用在匿名方法外部定义的其他变量。
       如果需要用匿名方法多次编写同一个功能,就不要使用匿名方法,而编写一个指定的方法比较好,因为该方法只能编写一次,以后可通过名称引用它。
       通过使用匿名方法,可以不必创建单独的方法,因此减少了实例化委托所需要的编码系统开销。
       用匿名方法定义委托的语法和前面的定义并没有区别,但是实例化委托时就有区别了。

       那么什么时候该使用匿名方法?
       1.需要一个临时方法,该方法使用次数极少。
       2.该方法代码很短,甚至可能比方法声明都短的情况下使用
       QQ截图20160103191150.png

二:Lambda表达式
       Lambda表达式是C#3.0引入的,为匿名方法提供了的一个新语法,和普通方法一样,lambda表达式可以没有参数,也可以有多个参数。
       QQ截图20160103192543.png

       运算符=>的左边列出了匿名方法需要的参数。有几种编写方式:
       1. 在括号中定义类型和变量名:
       (string param) =>
       2. 省去变量类型:
       (param) =>
       3. 如果只有一个参数,就可以删除括号:
       MyDelegate myDelegate1 = param =>







1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2016-1-4 09:07:47 | 显示全部楼层
我只是路过打酱油的。
发表于 2016-1-4 17:59:19 | 显示全部楼层
温故而知新...................
发表于 2016-1-7 11:59:20 | 显示全部楼层
温故而知新
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-18 12:19

© 2014-2021

快速回复 返回顶部 返回列表