问题描述
- F的重载均与委托不匹配
-
最近初学C#,写了下面的程序,有个小问题不知道怎么修改,请大家帮忙看看namespace ConsoleApplication18
{
public delegate void Mydelegate()
where T : struct
where U : class, new();class A { public void Show() { Console.WriteLine("Welcome"); } } class B { public static void F(int aa, A obj) { Console.WriteLine(aa.ToString()); } public void G(decimal dd, A obj) { Console.WriteLine(string.Format("{0:C3}", dd)); } } class Program { static void Main(string[] args) { Mydelegate<int, A> mt = new Mydelegate<int, A>(B.F); //这行有错 Console.ReadKey(); } }
}
//错误提示信息: 错误 1 “F”的重载均与委托“ConsoleApplication18.Mydelegate”不匹配 c:userszhangye-1documentsvisual studio 2012ProjectsConsoleApplication18ConsoleApplication18Program.cs 28 37 ConsoleApplication18
解决方案
要不mydelegate定义上加2个参数,要么f定义去掉参数,总之得一致。
解决方案二:
要不mydelegate定义上加2个参数,要么f定义去掉参数,总之得一致。
时间: 2025-01-03 07:57:44