依赖上下文。也就是不能脱离上下文的前提下判断。
同名方法、相同参数、返回值不同,如果只有这些条件,让编译器调用哪一个函数?如果将每个方法的结果都计算出来,再根据结果类型判断函数,又很浪费资源。
例子:
如下的重载,调用哪个方法?
class{
double sqrt(double do){return...}
float sqrt(double do){return...}
}
依赖上下文。也就是不能脱离上下文的前提下判断。
同名方法、相同参数、返回值不同,如果只有这些条件,让编译器调用哪一个函数?如果将每个方法的结果都计算出来,再根据结果类型判断函数,又很浪费资源。
如下的重载,调用哪个方法?
class{
double sqrt(double do){return...}
float sqrt(double do){return...}
}
本文标题:为什么不能根据返回类型的不同来区分重载
本文链接:https://www.haomeiwen.com/subject/rjcpoftx.html
网友评论