美文网首页c++学习笔记
c++函数的缺省参数

c++函数的缺省参数

作者: 檀香静雪 | 来源:发表于2020-07-12 18:12 被阅读0次

定义

c++中,定义函数的时候可以让最右边的连续若干个参数有缺省值,在调用函数的时候,如果不写相应位置的参数,则调用的参数就为缺省值。

例如:

void fun(int a, int b = 1, int c = 2) {
    cout << "a=" << a << "\tb=" << b << "\tc=" << c << endl;
}


在调用时,如果参数bc的参数没有给出,则默认为缺省值。

函数缺省参数的作用在于提高程序的可扩充性。比如某个以及写好的函数需要添加新的参数,而原先调用函数的的那些语句未必需要新增加的参数,为了避免对原来所有调用该函数的地方进行修改,就可以使用函数缺省参数了。

全缺省

顾名思义,全缺省就是参数的所有值都为缺省参数,如下代码所示:

#include<iostream>
using namespace std;
void fun(int a=1, int b = 2, int c = 3) {
    cout << "a=" << a << "\tb=" << b << "\tc=" << c << endl;
}
int main() {
    fun();
    fun(4, 5, 6);
    return 0;
}

执行该程序,输出:

a=1     b=2     c=3
a=4     b=5     c=6

需要注意的是,我们在调用函数时,只能缺省最右边的若干个参数,形如:fun(4, , 6);这种调用是错误的调用方法。

半缺省

半缺省指的是参数中有一部分为缺省参数,有一部分为非缺省参数。

值得注意的是,缺省参数只能为最右边的若干个

例如:

#include<iostream>
using namespace std;
void fun(int a, int b = 2, int c = 3) {
    cout << "a=" << a << "\tb=" << b << "\tc=" << c << endl;
}
int main() {
    fun(1);
    fun(1, 4);
    fun(4, 5, 6);
    return 0;
}

执行上面程序,输出如下:

a=1     b=2     c=3
a=1     b=4     c=3
a=4     b=5     c=6

形如:void fun(int a=1, int b, int c = 3) { }这样的语句是错误的用法。

形如:fun(1, ,3)这种调用也是错误的。

总之记住,缺省参数只能为最右边的若干个参数。

相关文章

  • C++程序设计学习笔记:1 从C走进C++ 函数参数的缺省值

    在 C++ 中,定义函数的时候,可以让最右边的连续若干个参数有缺省值。 例如: 函数参数的缺省值可以提高软件的可扩...

  • C++ - 函数的缺省参数

    C++中,定义函数的时候可以让最右边的连续若干个参数有却兴致,那么调用函数的时候,若响应位置不写参数,参数就是缺省...

  • c++函数的缺省参数

    定义 c++中,定义函数的时候可以让最右边的连续若干个参数有缺省值,在调用函数的时候,如果不写相应位置的参数,则调...

  • C++函数的缺省参数

    在定义函数的时候,我们可以“初始化”形参的值,这样做就可以不向函数中传递参数,如果不传递参数,那么函数会使用默认形...

  • c++第一讲

    目标 c++关键字 命名空间 c++输入和输出 缺省参数 函数重载 引用 内联 auto关键字 基于范围的for循...

  • C++——内联函数、函数重载、函数缺省参数

    内联函数 使用inline关键字将函数变为内联函数,函数内联是为了降低函数调用时占用的多余时间,多余时间的产生在,...

  • C++——内联函数、函数重载、函数缺省参数

    内联函数 使用inline关键字将函数变为内联函数,函数内联是为了降低函数调用时占用的多余时间,多余时间的产生在,...

  • Python语法学习三之函数

    一、简单函数定义和调用 二、函数参数 2-1、缺省参数 调用函数时,缺省参数的值如果没有传入,则被认为是默认值。注...

  • Python面试中需要的九个知识点

    1.对缺省参数的理解。给出代码缺省参数在python中是与函数绑定在一起的。也就是说,一个函数中定义了一个缺省参数...

  • 「python」 三个方面讲解函数的缺省参数

    所谓缺省参数,在定义函数时,可以给某个参数指定一个默认值,具有默认值的参数就叫做缺省参数。调用函数时,如果没有传入...

网友评论

    本文标题:c++函数的缺省参数

    本文链接:https://www.haomeiwen.com/subject/mqhncktx.html