在 C# 中,可以通过自定义委托来定义一种特定的方法签名,以便在需要时可以将其作为参数传递给其他方法或事件(人话就是:将方法作为参数进行传递)。

以下是自定义委托的步骤:

  1. 首先,需要使用关键字 delegate 来定义一个委托类型。委托类型定义了方法的签名,包括返回类型和参数列表。
    1. 例如,下面是一个自定义委托的示例:
    2. delegate void MyDelegate(int x, int y);

      上述代码定义了一个名为 MyDelegateint 的委托类型,它接受两个类型的参数并且没有返回值。

  2. 定义一个方法,其参数类型与委托类型相匹配。这个方法将成为委托类型的实例。

    1. void AddNumbers(int a, int b)
      {
          int sum = a + b;
          Console.WriteLine("Sum: " + sum);
      }

      上述代码定义了一个名为 AddNumbersint 的方法,它接受两个类型的参数并且没有返回值

  3. 创建委托实例并将方法作为参数传递给委托实例。

    1. MyDelegate myDelegate = new MyDelegate(AddNumbers);

      上述代码创建了一个名为 myDelegateAddNumbers 的委托实例,并将方法作为参数传递给委托实例。

  4. 调用委托实例。

    1. myDelegate(5, 10);

      上述代码调用了委托实例 myDelegate ,并传递了两个参数。

04-18 10:44