提示:无需在匿名函数中指定返回类型,返回值类型是从方法体内的 return 语句推断出来的。
delegate void NumberChanger(int n);
...
NumberChanger nc = delegate(int x)
{
Console.WriteLine("Anonymous Method: {0}", x);
};
Console.WriteLine("Anonymous Method: {0}", x);
是匿名函数的主体。 ;
结尾。using System; namespace task.lmcjl.com { class Demo { delegate void NumberChanger(int n); static int num = 10; public static void AddNum(int p){ num += p; Console.WriteLine("命名函数: {0}", num); } public static void MultNum(int q){ num *= q; Console.WriteLine("命名函数: {0}", num); } static void Main(string[] args){ // 使用匿名函数创建委托实例 NumberChanger nc = delegate(int x) { Console.WriteLine("匿名函数: {0}", x); }; // 使用匿名函数调用委托 nc(10); // 使用命名函数实例化委托 nc = new NumberChanger(AddNum); // 使用命名函数调用委托 nc(5); // 使用另一个命名函数实例化委托 nc = new NumberChanger(MultNum); // 使用命名函数调用委托 nc(2); Console.ReadKey(); } } }运行结果如下:
匿名函数: 10
命名函数: 15
命名函数: 30
本文链接:http://task.lmcjl.com/news/15454.html