英語で読む

次の方法で共有


コンパイラ エラー CS0123

デリゲート 'delegate' に一致する 'method' のオーバーロードはありません

デリゲートの作成を試みましたが、正しいシグネチャを使用しなかったために失敗しました。 デリゲートのインスタンスは、デリゲート宣言と同じシグネチャを使用して宣言する必要があります。

このエラーは、メソッドまたはデリゲートのシグネチャを調整すれば解決できます。 詳細については、「デリゲート」を参照してください。

次の例では CS0123 が生成されます。

// CS0123.cs  
delegate void D();  
delegate void D2(int i);  
  
public class C  
{  
   public static void f(int i) {}  
  
   public static void Main()  
   {  
      D d = new D(f);   // CS0123  
      D2 d2 = new D2(f);   // OK  
   }  
}