您的位置:首页 > 编程语言 > C#

C#_实现闭包函数

2015-12-15 22:16 288 查看
delegate void ActionCallback();

class Start
{
static void Main(string[] args)
{
for (int i = 0; i < 5; i ++ )
{
// 分析:编译器将闭包引用的局部变量转换为匿名类型的字段,导致了局部变量分配在堆中。
// 备注:C# 编译器帮我们做了非常多的工作,如:自动属性、类型推断、匿名类型、匿名委托、Lamda 表达式、析构方法、await 和 sync、using、对象初始化表达式、lock、默认参数 等等,这些统称为“语法糖”。
NetworkCallback(() => {
Console.WriteLine("i:" + i);
});
}

Console.ReadLine();
}

public static void NetworkCallback(ActionCallback Callback)
{
if (Callback != null)
{
Callback();
}
}
}


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# 闭包函数