C++中函数默认参数

C++中函数默认参数,第1张

C++中函数默认参数

顾名思义,函数默认参数就是函数本身的参数是有一个值的,如果不需要指定,即使用默认参数值。

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;
}

如果这样写,会导致编译器不能正常运行,需要注意,但是好像也不怎么这样用,哈哈。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5714639.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存