【发布时间】:2011-01-12 15:28:07
【问题描述】:
我在使用重载方法时遇到了一些困难。我的签名是这样的:
void Register(object source, EventHandler mapped_handler)
void Register(object source, string mapped_property)
我正在尝试这样称呼第一个:
Register(someObject, (s, e) => { ... });
Visual Studio 2008 给了我error CS1503: Argument '2': cannot convert from 'System.EventHandler' to 'string'。
我错过了什么?我不确定问题出在哪里。我还有其他非重载方法,我可以毫无问题地将EventHandler lambdas 传递给它们。
【问题讨论】:
-
这应该可以。尽可能多地剥离仍然重现问题的代码(一个包含这两个具有琐碎定义的重载的类,以及一个尝试调用
Register(object, EventHandler)重载的Main)并将其发布在这里,我们会看到我们的可以做。同样,您尝试做的事情是可能的。
标签: c# overloading