加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 湛江站长网 (https://www.0759zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

EasyC++,默认构 造函数

发布时间:2022-11-21 12:42:38 所属栏目:编程 来源:
导读:  默认构造函数
  上一篇文章当中介绍的是显式构造函数,也就是说我们需要传入值来对类的成员变量进行初始化。
  
  但也有一些情况,我们可能并不需要传入值进行初始化,或者有一些其他的逻辑。针对这种
  默认构造函数
  上一篇文章当中介绍的是显式构造函数,也就是说我们需要传入值来对类的成员变量进行初始化。
  
  但也有一些情况,我们可能并不需要传入值进行初始化,或者有一些其他的逻辑。针对这种情况,C++提供了默认构造函数的功能。所谓默认构造函数,也就是在没有提供显式的初始值时,用来创建对象的构造函数。
  
  默认构造函数非常简单,还是以之前的Stock类为例:
  
  Stock::Stock() {
  
  ...
  
  }
  如果默认构造函数里没有任何逻辑,我们也可以把它写在类声明里:
  
  class Stock {
  
  ...
  
  Stock() {}
  
  };
  
  #endif
  C++当中有一个很奇怪的设定,当一个类我们没有提供任何构造函数时,C++会默认赋予它一个默认构造函数。但当我们一旦实现了构造函数之后,C++则不会进行如此操作。意味着对于定义了构造函数的类来说,想要使用默认构造函数,必须由程序员手动定义。
  
  有了默认构造函数之后,我们才可以直接声明类的实例:
  
  Stock stock1;
  如果Stock类没有默认构造函数,那么上述的语句会报错。
  
  实现默认构造函数,除了上述那样手动创建一个没有任何参数的构造函数之外,还可以将已有的构造函数的所有参数都设置默认值。
  
  Stock(const string &co = "Error", int n = 0, double pr = 0.0);
  由于只能有一个默认构造函数,所以不要同时采用这两种方式。
 

(编辑:PHP编程网 - 湛江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!