默认参数
函数的形参列表可以有默认参数,但具有默认参数的形参必须在形参列表的最右边。
void fun1(int a, int b, int c = 0) { ;} //正确
void fun1(int a, int b = 0, int c = 0) { ;} //正确
void fun1(int a, int b = 0, int c) { ;} //错误
void fun1(int a = 0, int b = 0, int c) { ;} //错误
void fun1(int a = 0, int b, int c = 0) { ;} //错误
同样的,函数声明也可以有默认参数,规则通函数定义时的规则一样
void fun1(int a, int b, int c = 0); //正确
void fun1(int a, int b = 0, int c = 0); //正确
void fun1(int a, int b = 0, int c); //错误
void fun1(int a = 0, int b = 0, int c); //错误
void fun1(int a = 0, int b, int c = 0); //错误
函数占位参数
void fun3(int a, int) { ;};
void fun4(int a, int = 0) { ;}; //占位参数也可以有默认值
fun3(0, 0); //占位参数必须填补
函数占位参数就我目前学习阶段来说意义不大,但在后面学习会用到该技术