顾名思义,函数默认参数就是函数本身的参数是有一个值的,如果不需要指定,即使用默认参数值。
int add1(int a,int b,int c)//不带默认参数的函数体 { return a+b+c; } int add2int a,int b =10,int c =20)//带默认参数的函数体 { return a+b+c; }
可以在上图看到,函数add2在定义的时候就把参数赋值了。
默认参数怎么使用?
int add(int a ,int =10,int c =20)//带默认参数的函数体 { return a+b+c; } int mian() { cout<
在上图就很明显,按顺序输入参数的值,就可以替换对应的默认参数,比较简单。
注意
1.函数参数列表中只要定义了一个默认参数,那么从这个参数开始,每个参数必须有默认值;
int add(int a,int b,int c){};//abc都没有默认值 int add(int a,int b =10,int c =20){};//b有默认值后,后面的c必须要有默认值 int add(int a =10,int b =20,int c =30){};//a有默认值后,后面所有的参数bc都需要有默认值 //错误写法 int add(int a =10,int b,int c){};//a后面的参数b和c没有默认值2.函数声明和函数定义的时候不要都存在默认值,这样会产生二义性,导致编译器无法选择:
//以下是错误写法 int add(int a =0,int b =10,int c= 20);//函数声明 int mian() { add();//函数调用,因为参数abc都有默认参数,所以可以直接不写参数 } //函数实现 int add(int a =20,int b =30,int c =40) { retrun a+b+c; }如果这样写,会导致编译器不能正常运行,需要注意,但是好像也不怎么这样用,哈哈。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)