1缺省参数的概念:缺省参数是声明或定义函数时为函数参数指定的一个缺省值,如果没有指定实参则采用该形参的缺省值,否则使用指定的实参。
2.缺省参数的分类
2.1全缺省参数:全部形参都是缺省参数
给缺省参数传递实参时可以都不给,或者从左往右给,但是不能跳着给
int Add(int left=1, int right=2)
{
return left + right;
}
int main()
{
cout << "hello world!!!"<<endl;//<<流插入运算符
cout << "Add为" << Add(3, 4)<< endl;//打印7
cout << "apple is" << Add(3) << endl;//传给left,打印5
cout << "apple is" << Add() << endl;//什么都不传打印3
//cout << "apple is" << Add( ,4) << endl;//错误传法,必须从左往右依次传
return 0;
}
2.2半缺省参数:部分参数是缺省值,但必须遵循一下两点(1)半缺省参数必须从右往左给出,不能间隔(2)缺省参数不能在函数的声明和定义中同时出现,因为要避免函数声明和定义中缺省参数不同。
int Sum(int first, int second=2,int last=3)//半缺省参数必须从右往左
{
return first + second + last;
}
int main()
{
cout << "hello world!!!"<<endl;//<<流插入运算符
cout << Sum(4,5,6)<< endl;//打印结果为15
cout << Sum(4,5) << endl;//打印结果为12
cout << Sum(4) << endl;//打印结果为9
return 0;
}