C# 按返回类型重载?
我可以通过参数重载方法,但为什么不能通过返回类型重载方法呢 返回类型不被视为方法签名的一部分。也就是说,如果方法只因返回类型不同而不同,则不能重载它们 呼叫C# 按返回类型重载?,c#,.net,syntax-error,C#,.net,Syntax Error,我可以通过参数重载方法,但为什么不能通过返回类型重载方法呢 返回类型不被视为方法签名的一部分。也就是说,如果方法只因返回类型不同而不同,则不能重载它们 呼叫 public class test { public void xov() { return; } public string xov() { return null; } public int xov() { return 0; } } public class p { public p() {
public class test
{
public void xov() { return; }
public string xov() { return null; }
public int xov() { return 0; }
}
public class p
{
public p()
{
test v = new test();
v.xov();// Here i cann't use defined overloads :(
}
}
可能不同于:
int x = Add(5,6);
但是如果没有人读取返回类型呢
string y = Add(5,6);
编译器如何知道调用了哪个add?
所以这个选择是不合法的
方法的返回类型不是方法签名的一部分
用于方法重载的目的。然而,这是问题的一部分
在确定
委托及其指向的方法
Add(5,6);