重载函数的类型转换
void fun(int i, int j, int k = 10);
void fun(double i, double j = 1.2);
int main(void){
fun(0);
fun(10);
后面对fun函数调用的时候,编译器会直接将0和10与double类型的绑定。所以应该输出是0.0 1.2 和 10.0 1.2 但是,我的输出结果为0 1.2 和10 1.2 是为什么呀
void fun(int i, int j, int k = 10);
void fun(double i, double j = 1.2);
int main(void){
fun(0);
fun(10);
后面对fun函数调用的时候,编译器会直接将0和10与double类型的绑定。所以应该输出是0.0 1.2 和 10.0 1.2 但是,我的输出结果为0 1.2 和10 1.2 是为什么呀
2017-03-15
#include<iostream>
#include<stdio.h>
using namespace std;
void fun(int i,int j,int k=10);
void fun(double i,double k=0,double j=1.2);
int main(void)
{
fun(0);
fun(10);
system("pause");
return 0;
}
void fun(int i,int j,int k)
{
cout<<i<<","<<j<<","<<k<<endl;
return ;
}
void fun(double i,double k,double j)
{
cout<<i<<","<<k<<","<<j<<endl;
return ;
}
举报