在C#、Java中,为什么不能用[返回值]区别重载方法?

时间:2023-03-08 16:12:35

为什么方法签名只包含方法名和参数列表,而没有把返回值考虑进去?

如下有两个方法:

void Func(){}

string Func() { return string.Empty; }

编辑器可以根据上下文和返回值,确定调用哪个方法,如:

 string value = Func();

有时候你并不需要返回值呢:

Func();

编辑器应该如何区分,别人应该如何理解 ?