int fun1(int x,float y)
{
return 0;
}
//1.函数名相同,如果参数个数相同,参数类型顺序不同,该函数属于重载函数.
int fun1(float x,int y)
{
return 0;
}
//2.函数名相同,如果参数不同,参数类型顺序不同或者相同,该函数属于重载函数
int fun1(float x,int y,int z)
{
return 0;
}
int fun1(int x,float y,int z)
{
return 0;
}
int fun1(float y)
{
return 0;
}
//3. 以上条件如果是重载函数,如果这两个函数返回值不同 这两个函数也是重载函数
void fun1(float y,float y1)
{
}
/*void fun1(float y) //错误 int fun1(float y)和 void fun1(float y)属于同一个重载函数
{
return 0;
}
*/
//4.类型转换导致重载函数产生二义性
void fun1(int y)
{
}
int _tmain(int argc, _TCHAR* argv[])
{
fun1(0.5);//产生二义性,fun1函数
//重载里有两个函数分别为
//fun1(int y)和 fun2(flaot y)
return 0;
}