重载的函数中如果形参带有默认值时,可能产生二义性
int add(int x=5, int y=6);
int add(int x=5, int y=6, int z=7);
int main() {
int sum;
sum= add(10,20);
return 0;
}
int add(int x, int y)
{
return x+y;
}
int add(int x, int y, int z)
{
return x+y;
}
sum=add(10,20)语句产生二义性性,可以认为该语句是调用第一个函数,也可以是第二个,因此编译器不能确定调用的是哪一个函数。
跟我一起学C++之带默认形参值的函数的二义性
最新推荐文章于 2024-08-20 12:27:11 发布