CSharp - 调用不带参数的函数 - 错误 33 'foo' 没有重载匹配委托
CSharp - Calling a functions without params - error 33 no overload for 'foo' matches delegate
我有两段代码。一个在工作,另一个不工作,我真的不知道 c# 和 google 并没有帮助我弄明白很多。希望有人能解释一下是什么问题。
编辑 - 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
时,我不知道为什么要这样做。
第二段代码returns出错:
Error 33 No overload for 'foo' matches delegate 'Core.Panels.ListFooPannels.SearchFoo' C:\Foo\Functionalities\Foo\FooForm.cs
该项目开发于 Visual Studio 2008 年。
谢谢,
贾科莫
您的委托需要两个参数:
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 个,这就是你得到异常的原因。
我有两段代码。一个在工作,另一个不工作,我真的不知道 c# 和 google 并没有帮助我弄明白很多。希望有人能解释一下是什么问题。
编辑 - 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
时,我不知道为什么要这样做。
第二段代码returns出错:
Error 33 No overload for 'foo' matches delegate 'Core.Panels.ListFooPannels.SearchFoo' C:\Foo\Functionalities\Foo\FooForm.cs
该项目开发于 Visual Studio 2008 年。
谢谢, 贾科莫
您的委托需要两个参数:
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 个,这就是你得到异常的原因。