山西大同网站建设价格,如何在app上做网站,公司网站制作有哪些,动易做网站//以下示例和说明都源于《visual c# 2005 技术内幕》 //匿名函数就是没有名字的函数#xff0c;是专用于委托的函数。 using System; using System.Collections.Generic; using System.Text; namespace 匿名方法 { public delegate void DelegateClass(); public dele… //以下示例和说明都源于《visual c# 2005 技术内幕》 //匿名函数就是没有名字的函数是专用于委托的函数。 using System; using System.Collections.Generic; using System.Text; namespace 匿名方法 { public delegate void DelegateClass(); public delegate void delegatec(out int param); public delegate void ADelegateT(T tvalue); class Program { static void Main(string[] args) { int m; //定义了一个无签名的地匿名函数该匿名方法的签名是从委托推导出来的。 //但它的返回类型必须和委托相同。 DelegateClass del delegate { Console.WriteLine(Running anonyous method); }; del(); //定义具有一个签名的匿名函数 delegatec dell delegate(out int inner) { inner 12; Console.WriteLine(inner); }; dell(out m); //外部变量。 匿名方法可以对该方法定义的作用域的包含函数和类成员的局部变量进行引用。 //在匿名方法中使用的局部变量称为外部变量。 //一个被捕获的外部变量的生存周期与委托的生存周期相同 dell MethodA(); dell(out m); Console.WriteLine(m); //范型匿名方法。匿名方法可以使用指定类或委托的范型参数但是匿名方法不能定义新的范型参数和约束。 ADelegateint ad delegate(int a) { a 10; Console.WriteLine(a); }; ad(m); } public static delegatec MethodA() { int local 0; return delegate(out int arg)//返回匿名方法 { arg local;//延长了局部变量local的生存周期 }; } } } //注匿名方法的限制 //不要企图跳出一个匿名方法 //不要在一个匿名方法中使用一个ref或者out类型的外部变量 //不要定义新的一般参数或约束 //不要将属性应用于匿名方法 //不要用- 赋值运算符使用匿名方法 //不能是一个成员方法 //不能是一个不安全方法 本文转自悬魂博客园博客原文链接http://www.cnblogs.com/xuanhun/archive/2008/06/30/1662365.html如需转载请自行联系原作者