目录
7. Action和function区别,以及内部实现,注册函数如何防止重复,如何删除
6.C#闭包实现
闭包即闭包是指可以包含自由(未绑定到特定对象)变量的代码块.表现出来是调用函数结束后,函数内的变量的生存周期拉长到调用者的生命。
贴一段简单的闭包实现代码
var list =new Action[10];
for(int i=0;i<list.Length;i++){
list[i]=()=>{Console.WriteLine(i);};
}
foreach(var item in list)
{
item();
}
7. C#委托Action和function区别,注册函数如何防止重复,如何删除
Action和function的区别:
Action:表示不带返回值,可传递0-16个泛型参数委托;有传入int、string、bool类型的参数,无返回值的委托
Func:表示带泛型返回值,可传递0到16个泛型参数的委托;传