OC Block、Swift Closure以及C# Lambda的对比

来源:互联网 发布:javascript !! 编辑:程序博客网 时间:2024/06/09 14:07

Block:代码块、语法糖、对象(带有isa指针的结构体)

Closure:闭包、自包含模块、捕获前后变量处理逻辑

Lambda:可用于创建委托或表达式目录树类型的匿名函数

Lambda运算符=>的左边列出了需要的参数,右边定义了赋予Lambda变量方法的实现代码。

示例:

namespace DelegateTest{    class Program    {        public delegate void CallBack(string name, int number);                static void Main(string[] args)        {            CallBack cb = (name,number)=>            {                System.Console.WriteLine(name);                System.Console.WriteLine(number);            };            cb("Conde",30);        }    }}
详解Lambdad:

https://msdn.microsoft.com/zh-cn/library/bb397687.aspx

http://www.jianshu.com/p/082accc59812

----------------------我是分界线----------------------

Swift和C#语法及相关对比

基本语法比较

函数方法比较

5个共同点

0 0