匿名函数(C# 编程指南)

匿名函数是一个“内联”语句或表达式,可在需要委托类型的任何地方使用。 可以使用匿名函数来初始化命名委托,或传递命名委托(而不是命名委托类型)作为方法参数。

共有两种匿名函数,以下主题中分别讨论了这些函数:

  • Lambda 表达式。

  • 匿名方法

C# 中委托的发展

下面的示例演示从 C# 1.0 到 C# 3.0 委托创建过程的发展:

class Test
{delegate void TestDelegate(string s);static void M(string s){Console.WriteLine(s);}static void Main(string[] args){// Original delegate syntax required // initialization with a named method.TestDelegate testDelA = new TestDelegate(M);// C# 2.0: A delegate can be initialized with// inline code, called an "anonymous method." This// method takes a string as an input parameter.TestDelegate testDelB = delegate(string s) { Console.WriteLine(s); };// C# 3.0. A delegate can be initialized with// a lambda expression. The lambda also takes a string// as an input parameter (x). The type of x is inferred by the compiler.TestDelegate testDelC = (x) => { Console.WriteLine(x); };// Invoke the delegates.testDelA("Hello. My name is M and I write lines.");testDelB("That's nothing. I'm anonymous and ");testDelC("I'm a famous author.");// Keep console window open in debug mode.Console.WriteLine("Press any key to exit.");Console.ReadKey();}
}
/* Output:Hello. My name is M and I write lines.That's nothing. I'm anonymous andI'm a famous author.Press any key to exit.*/

.net3.5之后,大部分时候匿名方法可以被lambda替代。

地址:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/statements-expressions-operators/anonymous-methods

搜索:匿名方法(C# 编程指南)

转载于:https://www.cnblogs.com/Tpf386/p/9945373.html

C#中委托的发展与匿名函数相关推荐

  1. php debug_print_backtrace,php中debug_backtrace、debug_print_backtrace和匿名函数用法实例

    本文实例讲述了php中debug_backtrace.debug_print_backtrace和匿名函数用法.分享给大家供大家参考.具体分析如下: debug_print_backtrace() 是 ...

  2. 用python计算1~100的阶乘之和_在Python中递归函数调用举例and匿名函数lambda求1~100的和及计算阶乘举例...

    1.递归列出目录里的文件的脚本举例 列出目录中的文件可以通过下面方法:os.listdir() In [1]: import os In [4]: os.listdir('/root') Out[4] ...

  3. lua中的闭包(closure或者匿名函数)的作用

    闭包和upvalue lua构建一个新的函数时, 会创建一个函数对象, 其中包含了函数本身的原型还有函数使用到的外部变量或者常量. 当这个新的函数处于某个函数内部, 我们将这个对象称之为闭包, 它所引 ...

  4. 关于拉姆达,委托,匿名函数

    相信您一定听过这样的几个名词,拉姆达,委托,匿名函数.这三个名词之间有着一定的联系,至于他们的定义百度有很多,我来说说我理解的它们之间的联系和区别. 首先是匿名函数,在c# 2.0时加入了匿名函数.基 ...

  5. Matlab中的匿名函数

    目录 匿名函数 什么是匿名函数? 表达式中的变量 多个匿名函数 不带输入的函数 带有多个输入或输出的函数 匿名函数的数组 匿名函数 什么是匿名函数? ​        匿名函数是不存储在程序文件中.但 ...

  6. Python全栈之路系列----之-----内置函数和匿名函数lamdba

    引子 什么是内置函数? 内置函数就是python 提供给我们直接拿来就可以用的函数   内置函数--内置命名空间   只管调用 不管实现 总共68个 def func(): == #这是自己定义的函数 ...

  7. python定义匿名函数关键字_python语言的匿名函数、7种可调用对象以及用户定义的可调用类型...

    匿名函数 在python表达式中,用来创建匿名函数的是lambda关键字. lambda函数在python语言中只能使用纯表达式,也就是说,在lambda函数体中不能使用while和try,当然也不能 ...

  8. Python 函数的执行流程-函数递归-匿名函数-生成器

    1 函数的执行流程 函数的执行需要对函数进行压栈的,什么是压栈呢,简而言之就是在函数执行时在栈中创建栈帧存放需要变量以及指针的意思.具体涉及的知识非常多,这里就已一个Python脚本简单进行分析. 当 ...

  9. Python学习8 函数 匿名函数 内置函数

    转换相关的方法-eval 转换相关的方法-json 函数基本语法大纲 函数概念 示例: 题目: 函数的参数 def f(x,y=1,*z,**abc):print(x,y,z,abc,sep=&quo ...

最新文章

  1. github登陆策略
  2. javaweb 导出文件名乱码的问题解决方案
  3. LeetCode 1395. 统计作战单位数(蛮力法)
  4. Tensorboard详解(下篇)
  5. 扎克伯格夏威夷州大肆买地引发当地不满 被批搞“新殖民主义”
  6. 高倍数泡沫装置PHP_移动式高倍数泡沫灭火装置
  7. 统计学习方法读书笔记7-K近邻习题
  8. 基于用户名/密码认证和流量控制 安装pam_mysql(太麻烦,已放弃;以下步骤可以参考,有报错解决...
  9. 在Win10上安装VC6
  10. Cadence PSpice 仿真9:低通滤波器蒙特卡洛分析仿真实战图文教程
  11. Excel 冻结首行
  12. 蓝牙双模音频模块 BT401蓝牙BLE应用笔记
  13. 如何用GoldWave中文版提取伴奏?
  14. 配置VRRP负载分担
  15. Golang面试题整理
  16. 淘淘商城第39讲——使用Spring来管理单机版Redis与集群版Redis
  17. 微信公共号---LBS的开发
  18. 如何去掉图片上的水印而不损图片
  19. (14)python函数与变量
  20. php如何实现发送qq邮箱验证,php在windows下发送邮件实现

热门文章

  1. 【工具方法util】JAVA中将一个List等分成n个list的
  2. SCCM2012工作组PC安装客户端问题
  3. 算法系列之住酒店最少天数问题
  4. 使用SaltStack安装JDK1.6
  5. Android怎么访问私有数据(5)
  6. springside / springside4—CRUD页面教程
  7. Linux系统工程师的必备素质
  8. 使用 Firefox攻击Web2.0应用(一)
  9. mysql 书籍推荐 简书_Mysql复习必备----50条经典Sql语句
  10. openpose_net随机搜索网络源代码