美文网首页
C++ 函数的默认参数详解

C++ 函数的默认参数详解

作者: LoveSkye | 来源:发表于2019-10-22 22:39 被阅读0次

    C++ 中,定义函数时可以给形参指定一个默认的值,这样调用函数时如果没有给这个形参赋值(没有对应的实参),那么就使用这个默认的值。也就是说,调用函数时可以省略有默认值的参数。如果用户指定了参数的值,那么就使用用户指定的值,否则使用参数的默认值。

    所谓默认参数,指的是当函数调用中省略了实参时自动使用的一个值,这个值就是给形参指定的默认值。例如:

    1.  #include<iostream>
    2.  u[sin](http://c.biancheng.net/ref/sin.html)g namespace std;
    
    4.  //带默认参数的函数
    5.  void func(int n, float b=1.2, char c='@'){
    6.  cout<<n<<", "<<b<<", "<<c<<endl;
    7.  }
    
    9.  int main(){
    10.  //为所有参数传值
    11.  func(10, 3.5, '#');
    12.  //为n、b传值,相当于调用func(20, 9.8, '@')
    13.  func(20, 9.8);
    14.  //只为n传值,相当于调用func(30, 1.2, '@')
    15.  func(30);
    
    17.  return 0;
    18.  }
    
    

    运行结果:

    10, 3.5, #
    20, 9.8, @
    30, 1.2, @
    

    C++ 规定,默认参数只能放在形参列表的最后,而且一旦为某个形参指定了默认值,那么它后面的所有形参都必须有默认值。实参和形参的传值是从左到右依次匹配的,默认参数的连续性是保证正确传参的前提。

    默认参数并非编程方面的重大突破,而只是提供了一种便捷的方式。在以后设计类时你将发现,通过使用默认参数,可以减少要定义的析构函数、方法以及方法重载的数量。

    相关文章

      网友评论

          本文标题:C++ 函数的默认参数详解

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