C++之缺省参数

缺省参数又叫默认参数,当调用函数的时候,没有赋予参数,就使用函数的默认参数。

//缺省参数(也叫默认参数)
void func(int a = 0)
{
	cout << a << endl;
}
int main()
{
	func(1);//如果传了参数,则a = 1;
	func( );//如果没有传参数,则a默认等于0;

	return 0;
}

当有多个参数的时候, 都可以给缺省值,并且有多种调用方式

全缺省:

//全缺省
void func(int a = 10, int b = 20, int c = 30)
{
	cout << "a = " << a << endl;
	cout << "b = " << b << endl;
	cout << "c = " << c << endl << endl;
}

int main()
{
	func();//第一种啥都不传
	func(1);//第二种传a=1
	func(1, 2);//传两个值。分别给a和b,因为从左往右传值
	func(1, 2, 3);//传三个值。分别给a,b和c,不能说只传中间那一个或是最后那一个
	return 0;
}

半缺省:

//半缺省(部分缺省) -- 缺省部分参数 -- 必须从右往左缺省,必须连续缺省
//void func(int a, int b = 20, int c = 30)
void func(int a, int b, int c = 30)
{
	cout << "a = " << a << endl;
	cout << "b = " << b << endl;
	cout << "c = " << c << endl << endl;
}

int main()
{
	func(1, 2);//第一种传前面两个
	func(1, 2, 3);//第二种传三个
	return 0;
}

缺省参数可以应用于栈的初始化,比如 

 

注意:缺省参数不能在函数声明和定义中同时使用,要么在声明中,要么在定义,推荐写在声明。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值