课程
/后端开发
/C++
/C++远征之离港篇
在函数重载里面定义了两个函数,为什么我调用fun(1.1),结果会是1 20 30呢?
2017-09-19
源自:C++远征之离港篇 5-2
正在回答
并不是;
我猜你的代码是这样的
void fun (int a = 10 , int b = 20 , int c = 30);//定义
void fun (int a, int b , int c ){//实现
cout << a << "," << b << "," << c << endl;
}
在mian里面写的是
fun(1.1);
你这样相当于
int a = 10;
int b = 20;
int c = 30;
a = 1.1;//因为这个a是int的,是一个整数,没有小数点,所以小数点被丢弃了。
所以打印出来就是
1,20,30
你可以试试,就算这个值,你设置的是1.99,它也会变成1
你的代码发出来看看啊
举报
C++扫清通往面向对象的最后一道障碍,将所有知识点融会贯通