2. 判断下列几组函数重载是否能正常工作,并说明原因。 (1) char ch(double
答案:1 悬赏:10 手机版
解决时间 2021-03-20 18:48
- 提问者网友:蓝莓格格巫
- 2021-03-19 23:36
2. 判断下列几组函数重载是否能正常工作,并说明原因。 (1) char ch(double
最佳答案
- 五星知识达人网友:雾月
- 2021-03-20 01:12
重载,简单说,就是函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。
第一个不行,参数名字变了,但是类型没有变,所以还是一样的。
第二个也不行,因为参数类型和个数完全一样,返回值不一样,没用的,因为机器不知道返回哪一个。
第三个可以。追问第一个为什么不行,还是太懂,第二个返回类型一定要一样吗,还是不太理解,第三个也不太理解,可以详细解释吗,谢谢追答你先看下重载的定义。
参数列表不相同的情形。你的第一个中,参数列表是一样的。所以就不是重载了。在函数名中int a和int b其实就是一个意思,只是名字不一样而已。所以第一个是一个完全一样的函数,所以不是重载。
第二个,假如我调用的是f("c",3);你能看出调用的是哪个函数吗,看不出来,所以就有问题了。
第三个,因为参数列表的参数类型是完全不一样的,所以这个是可以的。
第一个不行,参数名字变了,但是类型没有变,所以还是一样的。
第二个也不行,因为参数类型和个数完全一样,返回值不一样,没用的,因为机器不知道返回哪一个。
第三个可以。追问第一个为什么不行,还是太懂,第二个返回类型一定要一样吗,还是不太理解,第三个也不太理解,可以详细解释吗,谢谢追答你先看下重载的定义。
参数列表不相同的情形。你的第一个中,参数列表是一样的。所以就不是重载了。在函数名中int a和int b其实就是一个意思,只是名字不一样而已。所以第一个是一个完全一样的函数,所以不是重载。
第二个,假如我调用的是f("c",3);你能看出调用的是哪个函数吗,看不出来,所以就有问题了。
第三个,因为参数列表的参数类型是完全不一样的,所以这个是可以的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯