作业帮 > 综合 > 作业

懂C++的帮解一道题,看补充

来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/13 08:00:15
懂C++的帮解一道题,看补充
函数int sum(int a=l,int b=1,int c=3)可与下列哪个函数同时声明( )
A.double sum(int);\x05B.char sum(int,int);
C.int sum(double);\x05D.int sum(int,int,int);
懂C++的帮解一道题,看补充
简单的说,返回值是干扰因素,去掉返回值之后,这五个声明就是
sum(int a=l,int b=1,int c=3)
double sum(int);
char sum(int,int);
int sum(double);
int sum(int,int,int);
最开始的sum因为3个形参都有了默认参数,所以sum有3种调用方式,分别是
设 int a,b,c;
那么题目给出的sum的调用手段有
sum();
sum(a);//相当于调用一个sum(int)
sum(a,b);//相当于调用一个sum(int,int)
sum(a,b,c);//相当于调用一个sum(int,int,int)
所以选项给出的A、B、D三个答案都不行,只有C答案的相当于sum(double),和上面的几种调用方式都不冲突,所以C
再问: 题目里说的“与函数同时声明”是什么意思呢?请详细的解释下,不太明白- -。
再答: 其实就是指两个函数同时在一个程序里面而已 因为一个程序不能包含两个完全一样的函数,或者两个会有冲突的函数 简单的说就是你在程序里面一起声明 int sum(int a=l,int b=1,int c=3){} 和 int sum(double){} 不会报错,不够你要是这样一起声明 int sum(int a=l,int b=1,int c=3){} 和 int sum(int){} 就会有错,无法编译