C#中的回调函数是一种可以在程序运行时被调用的函数。它可以在程序运行时实现对参数的处理,并返回结果给调用者。回调函数是一种异步操作,可以用来实现程序的异步处理,以提高程序的执行效率。
使用方法
使用C#回调函数的方法有两种:
- 使用委托:委托是C#中的一种特殊类型,可以用来实现回调函数。
- 使用事件:事件是C#中的一种特殊类型,可以用来实现回调函数。
示例
//使用委托实现回调函数
public delegate int Callback(int a, int b);
public int CallbackFunction(int a, int b)
{
return a + b;
}
public void Test(Callback cb)
{
int result = cb(1, 2);
Console.WriteLine(result);
}
public void Main()
{
Test(CallbackFunction);
}
//使用事件实现回调函数
public delegate void CallbackEventHandler(object sender, EventArgs e);
public class TestClass
{
public event CallbackEventHandler CallbackEvent;
public void OnCallbackEvent(EventArgs e)
{
if (CallbackEvent != null)
{
CallbackEvent(this, e);
}
}
}
public class Program
{
public void CallbackEventHandler(object sender, EventArgs e)
{
Console.WriteLine("Callback event triggered!");
}
public void Main()
{
TestClass testClass = new TestClass();
testClass.CallbackEvent += CallbackEventHandler;
testClass.OnCallbackEvent(EventArgs.Empty);
}
}