C++中构造函数的参数缺省的详解

 更新时间:2017年10月20日 10:11:11   作者:yzs87  
这篇文章主要介绍了C++中构造函数的参数缺省的详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下

C++中构造函数的参数缺省的详解

前言:

构造函数中参数的值既可以通过实参传递,也可以指定为某些默认值,即如果用户不指定实参值,编译系统就使形参取默认值。在构造函数中也可以采用这样的方法来实现初始化。

#include <iostream>
using namespace std;
class A
{
  public :
  A(int aa=0,int bb=00); //在声明构造函数时指定默认参数
  int volume( );
 
  int a;
  int b;
  
};

int main( )
{
 
 A obj(4);
 cout<<obj.a<<" "<<obj.b;  
return 0;
}

程序运行结果为

4 0

可以看到: 在构造函数中使用默认参数是方便而有效的,它提供了建立对象时的多种选择,它的作用相当于好几个重载的构造函数。

它的好处是: 即使在调用构造函数时没有提供实参值,不仅不会出错,而且还确保按照默认的参数值对对象进行初始化。尤其在希望对每一个对象都有同样的初始化状况时用这种方法更为方便。

关于构造函数默认值的几点说明:

  1. 应该在声明构造函数时指定默认值,而不能只在定义构造函数时指定默认值。
  2. 程序第5行在声明构造函数时,形参名可以省略。
  3. 如果构造函数的全部参数都指定了默认值,则在定义对象时可以给一个或几个实参,也可以不给出实参。
  4. 在一个类中定义了全部是默认参数的构造函数后,不能再定义重载构造函数。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • C++结构体字节对齐和共用体大小

    C++结构体字节对齐和共用体大小

    这篇文章主要介绍了C++结构体字节对齐和共用体大小,结构体内存对齐在笔试和面试中经常被问到,所以这篇文章做个总结,首先通过代码验证不同结构体的内存大小,需要的朋友可以参考下
    2021-11-11
  • Windows上CLion的配置步骤详解

    Windows上CLion的配置步骤详解

    这篇文章主要介绍了Windows上CLion的配置,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • c++回溯法解决1到9之间插入加减或空使运算结果为100

    c++回溯法解决1到9之间插入加减或空使运算结果为100

    编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性。例如:1 + 2 + 34 – 5 + 67 – 8 + 9 = 100
    2021-10-10
  • C语言开发简易版扫雷小游戏

    C语言开发简易版扫雷小游戏

    本文给大家分享的是一个使用C语言开发的命令行下的简易版扫雷小游戏,本身没有什么太多的技术含量,只不过是笔者的处女作,所以还是推荐给大家,希望对大家学习C能够有所帮助。
    2015-12-12
  • C++中简单的文本文件输入/输出示例详解

    C++中简单的文本文件输入/输出示例详解

    C++程序把输入和输出看作字节流,输入时程序从输入流中抽取字节,输出时程序将字节插入到输出流中,下面这篇文章主要给大家介绍了关于C++中简单的文本文件输入/输出的相关资料,需要的朋友可以参考下
    2021-12-12
  • linux c++ 服务器端开发面试必看书籍整理

    linux c++ 服务器端开发面试必看书籍整理

    这篇文章主要介绍了linux c++ 服务器端开发面试必看书籍整理,需要的朋友可以参考下
    2020-02-02
  • 浅析结束程序函数exit, _exit,atexit的区别

    浅析结束程序函数exit, _exit,atexit的区别

    在一个程序中最多可以用atexit()注册32个处理函数,这些处理函数的调用顺序与其注册的顺序相反,也即最先注册的最后调用,最后注册的最先调用
    2013-09-09
  • C++实现顺序表的方法

    C++实现顺序表的方法

    本文给大家带来了C++实现顺序表的方法,代码简单易懂,附有注释,感兴趣的朋友一起看下吧
    2016-08-08
  • C++多线程实现电子词典

    C++多线程实现电子词典

    这篇文章主要为大家详细介绍了C++多线程实现电子词典,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-03-03
  • C++ STL中五个常用算法使用教程及实例讲解

    C++ STL中五个常用算法使用教程及实例讲解

    本文主要介绍了C++ STL算法中常见的五个算法的使用教程并附上了案例详解,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-11-11

最新评论