C# 匿名方法和拉姆达表达式 (2012-04-27 23:27:15)转载▼ 标签: 杂谈 匿名方法本质上是一传递给委托的代码块,是使用委托的另一种方法。 规则: 1、匿名方法中不能使用跳转语句跳
来源:互联网 发布:淘宝鹊桥入口在哪里 编辑:程序博客网 时间:2024/05/21 20:25
C# 匿名方法和拉姆达表达式
(2012-04-27 23:27:15)转载▼
标签:
杂谈
匿名方法本质上是一传递给委托的代码块,是使用委托的另一种方法。
public delegate void PrintDelegate(string content); class Program { static void Main(string[] args) { PrintDelegate pd = (string str) => { System.Console.WriteLine("Printing..."); System.Console.WriteLine("Content:{0}", str); }; pd("The quick brown fox jumps oyer a lazy dog."); }
}
规则:
1、匿名方法中不能使用跳转语句跳至次匿名方法的外部,反之亦然;匿名方法外部的跳转语句也不能跳转到匿名方法的内部;
2、在匿名方法的内部不能访问不安全的代码。另外,也不能访问在匿名方法外部定义的ref和out参数。
3、可以使用在匿名方法外部定义的其他变量。
拉姆达表达式:就是匿名方法,只是语法不同。
(param)=>expr
param是输入参数列表,expr是一个表达式或者一系列语句。
规则:
1、在一个具有唯一的显示类型参数的Lambda表达式中,圆括号可以从参数列表中删除。
2、当输入参数不唯一时,括号不能省略。
3、输入参数列表中的各参数可以显式指定类型,也可以省略参数类型,具体类型通过类型判断机制判断。
4、expr可以只包含一个计算表达式,也可以包含一系列语句,只是语句需要包含在大括号中。
expr 为语句的时候:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DelegateSample
{
}
0 0
- C# 匿名方法和拉姆达表达式 (2012-04-27 23:27:15)转载▼ 标签: 杂谈 匿名方法本质上是一传递给委托的代码块,是使用委托的另一种方法。 规则: 1、匿名方法中不能使用跳转语句跳
- C#委托-使用匿名方法
- 委托和匿名方法的使用
- 使用匿名方法 委托
- 匿名方法---将代码块作为参数传递给委托
- C# 匿名方法 委托
- C#的委托,匿名方法和Lambda表达式
- C#中使用委托表达式与匿名方法实现委托方法
- 委托、匿名方法、Lambda表达式的演进
- 委托、匿名方法、Lambda表达式的演进
- c#之委托、匿名方法、Lambda表达式
- C# 委托用法、匿名方法、Lambda表达式
- 委托,匿名方法,λ 表达式
- 委托,匿名方法,lambda表达式
- C# 委托 事件 匿名方法
- c#匿名方法调用委托
- 委托和匿名方法、lambda表达式
- 委托中的匿名方法和lambda表达式
- json+hibernate死循环问题的一点见解
- poj 2947 Widget Factory(高斯消元解同余方程组)
- 黑马程序员--IO---FIle类常用方法
- 这一刻,就象这些雨滴
- jquery easyui datagrid 获取当前页 记录数 总页数
- C# 匿名方法和拉姆达表达式 (2012-04-27 23:27:15)转载▼ 标签: 杂谈 匿名方法本质上是一传递给委托的代码块,是使用委托的另一种方法。 规则: 1、匿名方法中不能使用跳转语句跳
- Linux tcpdump命令详解
- poj 3114 Countries in War(强连通分量缩点+spfa求最短路)
- linux后台运行和关闭、查看后台任务
- C#错误和异常处理
- 用单链表实现一个队列或一个栈的出入队和出入栈操作
- 【题解】[wikioi2873]日程表安排
- Well begun is half done!
- 20140218-lua binder另一只轮子的雏形(2014-01-02 20:08)