C#の委任の実装方法は何ですか?

C#のデリゲートの実装方法は、次のようにいくつかの方法で実現できます。

  1. メソッド名を指定して、そのメソッド名をデリゲートのパラメータとしてデリゲートインスタンスに渡す方法を定義します。
public delegate void MyDelegate(string message);

public class MyClass
{
    public static void PrintMessage(string message)
    {
        Console.WriteLine(message);
    }
    
    public static void Main()
    {
        MyDelegate myDelegate = PrintMessage;
        myDelegate("Hello World");
    }
}
  1. 使用匿名関数:デリゲートのパラメータ位置に直接匿名関数を定義します。
public delegate void MyDelegate(string message);

public class MyClass
{
    public static void Main()
    {
        MyDelegate myDelegate = delegate (string message)
        {
            Console.WriteLine(message);
        };
        
        myDelegate("Hello World");
    }
}
  1. Lambda式を使用する:Lambda式を使うと、匿名関数をより簡潔に定義することができます。
public delegate void MyDelegate(string message);

public class MyClass
{
    public static void Main()
    {
        MyDelegate myDelegate = (message) =>
        {
            Console.WriteLine(message);
        };
        
        myDelegate("Hello World");
    }
}

どの方法を使っても、デリゲートはメソッドを参照したり、実行時にメソッドを動的に置き換えたりすることができます。

bannerAds