回调函数
回调函数就是把一个方法的传给另外一个方法去执行。在C#有很多回调函数,比如异步操作的时候。这里先举个例子:
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace 回调函数自己写的 7 { 8 public delegate string ProcessDelegate(int s1, int s2); 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 string str1 = Process(2, 1, new ProcessDelegate(Add)); 14 string str2 = Process(2, 1, new ProcessDelegate(Sub)); 15 16 Console.WriteLine(str1 + Environment.NewLine + str2); 17 Console.Read(); 18 } 19 public static string Process(int i1, int i2, ProcessDelegate process) 20 { 21 return process(i1, i2); 22 } 23 public static string Add(int i1, int i2) 24 { 25 return (i1 + i2).ToString(); 26 } 27 public static string Sub(int i1, int i2) 28 { 29 return (i1 - i2).ToString(); 30 } 31 } 32 }
输出结果:
3
1
回调函数,就是有一个参数是:一个委托的实例。对于该委托,有很多实际的函数实例化它。当然回调函数还有其他参数可能用于在实例化的函数里作为参数使用。