C# 创建一个带回调函数的回调函数
时间: 2024-05-11 22:12:25 浏览: 15
在 C# 中,可以通过使用委托和事件来实现回调函数。下面是一个简单的例子,演示了如何创建一个带回调函数的回调函数:
```csharp
using System;
public delegate void CallbackDelegate(string message);
public class CallbackExample
{
public void DoWork(CallbackDelegate callback)
{
// 这里是一些工作代码
// 在工作完成后,调用回调函数
callback("工作已经完成!");
}
}
public class Program
{
static void Main(string[] args)
{
CallbackExample example = new CallbackExample();
// 创建一个委托实例,它引用一个静态方法
CallbackDelegate callback = new CallbackDelegate(PrintMessage);
// 将委托实例传递给 DoWork 方法
example.DoWork(callback);
}
static void PrintMessage(string message)
{
Console.WriteLine(message);
}
}
```
在上面的例子中,CallbackDelegate 是一个委托类型,它定义了一个方法签名,该签名接受一个字符串参数并返回 void。CallbackExample 类中的 DoWork 方法接受一个 CallbackDelegate 类型的参数,并在工作完成后调用该委托。在 Main 方法中,我们创建了一个 CallbackDelegate 委托实例,并将其传递给 DoWork 方法。在委托实例中,我们引用了 PrintMessage 静态方法,该方法接受一个字符串参数,并将其打印到控制台上。