一道笔试题[1]

不能作为重载函数的调用的依据是( )
A.参数个数 B.参数类型 C.函数类型 D.函数名称

答案为C.

重载函数的定义是:出现在相同作用域中的两个函数,如果具有相同的函数名字而形参的类型或者个数不同,则称为重载函数。

对比定义,则A,B,D均为重载函数调用的依据。

有人解释C选项时,说是因为“函数类型==函数返回值的类型”。这个解释是牵强附会的,尽管说“不能将函数返回值类型不同而作为函数重载的依据”,但是,由此而说“函数类型==函数返回值的类型”,这个在本质上是错误的。

关于函数类型,参见资料:

http://blog.csdn.net/amossavez/article/details/4494707http://kingplesk.org/2012/01/cc-%E5%87%BD%E6%95%B0%E7%B1%BB%E5%9E%8B%E5%92%8C%E5%87%BD%E6%95%B0%E6%8C%87%E9%92%88%E7%B1%BB%E5%9E%8B-%E8%AF%A6%E8%A7%A3/

原文地址:https://www.cnblogs.com/jiayouwyhit/p/3306990.html