美文网首页
构造函数(constructor)

构造函数(constructor)

作者: 闭嘴吧你 | 来源:发表于2016-07-09 11:38 被阅读0次

定义:类通过一个或几个特殊的成员函数来控制其对象的初始化过程,这些函数叫做构造函数。

作用:构造函数的任务是初始化类对象的数据成员,无论何时只要类的对象被创建,就会执行构造函数。

Tips:构造函数不能被声明称const。


构造函数几种形式:

  • 默认构造函数(=default):如果类没有显示地定义构造函数,那么编译器就会为类隐式地定义一个默认构造函数。
Solution() = default; 
  • 构造函数初始值列表:负责为新创建的对象的一个或几个数据成员赋初值。
//初始化
Sales_data(const string &s, unsigned n, double p) : bookNo(s), units_sold(n), revenue(p*n) {}
  • 在类的外部定义构造函数:
//赋值
 Sales_data::Sales_data(const string &s, unsigned n, double p)
{
        bookNo = s;
        units_sold = n;
        revenue = n * p;
}

初始化与赋值:

前者是直接初始化数据成员,后者则是先初始化再赋值。

如果成员是const或者是引用的话,必须将其初始化。或者,当成员属于某种类类型且该类没有定义默认构造函数时,也必须将这个成员初始化。

随着构造函数体一开始执行,初始化就完成了。因此,初始化const或者引用类型的数据成员的唯一机会就是通过构造函数初始值。

  • 委托构造函数:使用所属类的其他构造函数执行委托构造函数的初始化过程,或者说他把自己的一些或全部职责委托给了其他构造函数。

相关文章

  • JavaScript----类和继承

    类 构造函数Person中有一个构造函数constructor 调用构造函数的时候先调用constructor 继...

  • Kotlin学习-构造函数

    Kotlin的构造函数分为主构造函数(primary constructor)和次级构造函数(secondary ...

  • 原型与原型链

    构造函数与原型 JavaScript 语言使用构造函数(constructor)作为对象的模板。所谓”构造函数”,...

  • 构造函数(constructor)

    定义:类通过一个或几个特殊的成员函数来控制其对象的初始化过程,这些函数叫做构造函数。 作用:构造函数的任务是初始化...

  • React的构造函数constructor内的super()函数

    constructor构造函数作用 首先,为什么有时候不用写constructor构造函数,为啥看起来也没什么影响...

  • 20-拷贝构造函数

    拷贝构造函数(Copy Constructor) 拷贝构造函数,也是构造函数的一种。大家都知道,构造函数是在对象创...

  • 工厂函数(factory)与构造函数(constructor)

    工厂函数(factory) 使用工厂函数新建对象: 构造函数(constructor) 使用构造函数创建新对象: ...

  • ES6面向对象

    类声明与构造函数 class 声明类constructor 构造函数 继承与超类

  • kotlin 对象的实例化

    构造函数关键字 constructor如:class A{}class B()constructor(a: Str...

  • java面向对象之构造方法

    构造函数(构造方法、构造器、Constructor) 关于java类的构造函数 1、构造方法语法【修饰符列表】构造...

网友评论

      本文标题:构造函数(constructor)

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