#include<iostream>
using namespace std;
错误,未从右至左逐次定义
//void test1(int x=1, float y, int z=0);
//1、默认参数:应从右至左逐次定义
void test2(int x, float y=0, int z=0){
cout <<"x="<<x<<" y="<<y<<" z="<<z<< endl;
}
int main(){
//2、在调用函数时,传参从左至右匹配,未指定默认值的参数必须传入实际值。
test2(7);
test2(5,3);
test2(1,4,7);
return 0;
}
注意:
1.默认参数的顺序:如果一个函数中有多个默认参数,在形参分布中,默认参数应从右向左依次定义
2.函数调用时传参顺序:在函数调用时,传入的参数是从左至右匹配的;未指定默认参数的,需要显示传实际的实参。
C++之默认参数顺序(从右到左)和调用顺序(从左到右)
猜你喜欢
转载自blog.csdn.net/u010164190/article/details/123512439
今日推荐
周排行