美文网首页
c++中什么类型的成员变量只能在构造函数的初始化列表中进行

c++中什么类型的成员变量只能在构造函数的初始化列表中进行

作者: Hades_ | 来源:发表于2017-09-06 21:52 被阅读0次

const 和引用 类型的成员变量必须得用初始化列表进行初始化。其实这没什么高明的,也并不是一个明文规定。而是为遵守我们另一个规则而必须这么做。这个规则就是”const和引用类型的变量必须初始化“。而我们通过上面也明白了,函数体内是赋值而非初始化,若我们将const和引用类型的成员变量放在构造函数的函数体内的话。那么const和引用类型的变量将会没有初值,即没被初始化,根据我们另一个规则,当然会发生错误,编译器不允许我们这么做的。故:我们在构造函数中必须选择初始化列表对const和引用类型的成员变量进行初始化。

相关文章

  • C++初始化列表 多态

    初始化列表 特点 一种便捷的初始化成员变量的方式 只能在构造函数中 初始化列表与默认参数配合使用 如果函数的声明和...

  • c++中什么类型的成员变量只能在构造函数的初始化列表中进行

    const 和引用 类型的成员变量必须得用初始化列表进行初始化。其实这没什么高明的,也并不是一个明文规定。而是为遵...

  • C++中继承的构造与析构

    子类对象的构造 子类中可以定义构造函数 子类构造函数必须对继承而来的成员进行初始化直接通过 初始化列表 或者 赋值...

  • C++构造/析构函数

    构造函数初始化列表 当类的成员变量中存在类时候,同时成员类没有无参或默认构造函数,在创建该类的对象时候会出错。这是...

  • C++ - 封闭类

    封闭类 封闭类构造函数的初始化列表 定义封闭类的构造函数时,添加初始化列表:类名::构造函数(参数表):成员变量1...

  • 2020-09-15 构造函数初始化列表

    使用初始化列表的构造函数,其显式地对成员进行初始化 未使用初始化列表的构造函数,其通过赋值来对成员进行初始化(此赋...

  • 【dart基础知识补充】初始化实例变量的方式

    1、在实例变量声明时进行初始化 2、使用构造函数初始化 3、通过初始化列表 4、在构造函数中初始化 这种方法不适用...

  • C++笔记1--(Boolan)

    构造函数初始值列表 1、如果没有在构造函数的初始值列表中显示地初始化成员,则该成员将在将在构造函数体之前执行默...

  • [C++之旅] 11 初始化列表

    [C++之旅] 11 初始化列表 初始化列表的特性 初始化列表先于构造函数执行 初始化列表只能用于构造函数 初始化...

  • 14-初始化列表

    初始化列表 在以前,初始化成员变量是通过这种方式来进行的 通过定义一个构造函数,然后再创建对象时,调用对应的构造函...

网友评论

      本文标题: c++中什么类型的成员变量只能在构造函数的初始化列表中进行

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