函数
int fun(int x , int y , int z =1 , int k =2 , int m =4) { return x+y; } void main() { fun(1,2); //编译出错 fun(1,2,3); //编译正确 }
默认参数的规则:只有参数列表后面的参数才能被设置带默认值。
在参数列表中,在第一次出现默认参数的后面的所有参数都必须有默认参数。
函数占位参数:
int fun(int x , int y , int) { return x+y; } void main() { fun(1,2); //编译出错 fun(1,2,3); //编译正确 }
默认参数与占位参数 “在一起”:
int fun(int x , int y , int = 3) { return x+y; } void main() { fun(1,2); //编译通过 fun(1,2,3); //编译通过 }
函数重载:
在相同作用域内(比如在相同类中)
不以返回类型构成重载;仅以参数构成重载(参数个数,顺序,类型)
重载函数与带默认参数的函数:
void fun(int x , int y=1) { } int fun(int x) { } void main() { fun(1); //调用不明确,编译出错,调用存在二义性 fun(1,2); }
内在的趣味,表面的繁琐

浙公网安备 33010602011771号