函数int sum(int a=1,int b=1,int c=3)可与下列哪个函数同时声明( )
A、
double sum(int);
B、
char sum(int,int);
C、
int sum(double);
D、
int sum(int,int,int);
答案是C AB为什么错了呢
函数int sum(int a=1,int b=1,int c=3)可与下列哪个函数同时声明( )
A、
double sum(int);
B、
char sum(int,int);
C、
int sum(double);
D、
int sum(int,int,int);
答案是C AB为什么错了呢
因为函数的重载规则是根据函数的参数类型和参数数量来判断的。在C++中,函数的重载是根据函数的参数类型和参数数量来区分的,而与函数的返回类型无关。所以即使返回类型不同,只要参数类型和参数数量相同,就会被视为重复声明。
A、double sum(int); - 参数类型相同,但参数数量不同,所以不能与原函数同时声明。
B、char sum(int,int); - 参数类型相同,但参数数量不同,所以不能与原函数同时声明。