C++之缺省参数

缺省参数,就是在声明函数的某个参数时为其指定一个默认值,在调用该函数时,若采用该默认值,就无需指定该参数。

缺省参数使用的主要规则:调用时只能从最后一个参数开始进行省略。也就是说,只能从右往左缺省,并且缺省参数连续

int Add1(int a = 0,int b = 0){  //全缺省:参数列表中的参数均为缺省参数
    return a+b;
}

int Add2(int a,int b = 0){ 
 //半缺省:参数列表中的参数并非全为缺省参数,必须遵循使用规则,从右往左连续缺省
    return a+b;
}

我们可以用上面这个例子来进行举例:

#include <stdio.h>
int Add1(int a = 0,int b = 0){
    return a+b;
}

int Add2(int a,int b = 0){
    return a+b;
}

void Test(){
    int ret = Add1();
    printf("Add1() = %d\n",ret);
    ret = Add1(1);
    printf("Add1(1) = %d\n",ret);
    ret = Add1(1,1);
    printf("Add1(1,1) = %d\n",ret);
    ret = Add2(2);
    printf("Add2(2) = %d\n",ret);
    ret = Add2(2,2);
    printf("Add2(2,2) = %d\n",ret);
}

int main(){
    Test();
}

运行代码,得到如下结果:

通过这个结果,我们就可以很轻易地理解缺省参数了。

猜你喜欢

转载自blog.csdn.net/cecilia3333/article/details/81102122