C++:默认形参值的作用

函数在声明的时候可以预先给出默认形参值。调用时如果给出实参,那么就采用实参值,否则就使用给出的默认形参值。
【代码】

#include <iostream>
using namespace std;
int add(int a=3,int b=4){
	return a+b;
}
int main(){
	cout<<"add(1,2)="<<add(1,2)<<"    add(1)="<<add(1)<<"    add()="<<add()<<endl; 
	return 0;
}

【运行结果】
在这里插入图片描述
默认形参值必须是从右到左的顺序声明,并且在默认形参值的右边不能有非默认形参值的参数,因为调用的时候实参取代的是形参从左向右的顺序。(函数调用的时候参数是自右向左入栈的)
在这里插入图片描述
如上图所示,在默认值的右边不能有非默认值形参值的参数,否则报错。
在调用一个函数的时候,如果省略了某一个实参,那么直到最后一个实参也要省略(而且与他们对应的形参都要有默认值)
int fun(int a,float b=5.0,char c=’.’,int d=100);
fun(8, , ,4);//false
形参默认的值也可以是初始化表达式,甚至可以是函数调用。

发布了31 篇原创文章 · 获赞 2 · 访问量 3832

猜你喜欢

转载自blog.csdn.net/weixin_44652687/article/details/101599891