我有两段代码。一个它正在工作,另一个没有,我真的不知道 c# 和谷歌并没有帮我弄清楚太多。希望有人可以解释是什么问题。编辑- d 是public delegate List<CustomObj> SearchFoo(string a, string b);为什么这段代码有效d = foo;private List<CustomObj> foo(string a, string b) { ... }而这个没有?d = foo;private List<CustomObj> foo(string a, string b, string c) { ... }第一段代码运行没有问题,当调用 foo 函数时a = "",b = null我不知道为什么要这样做。第二段代码返回错误:Error 33 No overload for 'foo' matches delegate 'Core.Panels.ListFooPannels.SearchFoo' C:\Foo\Functionalities\Foo\FooForm.cs该项目是在 Visual Studio 2008 中开发的。
1 回答

海绵宝宝撒
TA贡献1809条经验 获得超8个赞
您的委托需要两个参数:
public delegate List<CustomObj> SearchFoo(string a, string b);
一个字符串 A 和一个字符串 B
d = foo;
private List<CustomObj> foo(string a, string b, string c)
{ ... }
当你这样做时,你在 foo 中有 3 个参数,但你的委托只需要 2 个,这就是你得到异常的原因。
- 1 回答
- 0 关注
- 134 浏览
添加回答
举报
0/150
提交
取消