C++ 构造方法

1、构造方法的作用是设置数据成员的初始值。

2、定义一个类Person的实例person的时候,必定会调用Person的构造方法。调用构造方法分为两个步骤:第一步使用初始化列表,第二步在构造方法内部对成员赋值。

3、对于初始化列表,肯定会执行。如果用户没有显式的调用,就会隐式的调用。然后才执行第二步,在构造方法内部赋值。

4、对于初始化列表,对于隐式或者显式中没有初始化的成员,成员的取值取决于下面的情况:

  a、如果成员是类类型,使用默认构造方法。(注:对于这种情况,必须保证成员具有默认构造方法)

  b、如果是内置类型,分为下面两种情况:

    b1、person是全局变量,初始化为0

    b2、person是局部变量,不初始化,为oxcccccccc

5、对成员设置一个初始值,在第一步或者在第二步都能达到同样的效果。但是下面几种情况必须在第一步做:

  a、const对象

  b、引用类型的对象

  为什么?因为const对象和引用类型的对象必须进行初始化,因此必须在初始化列表中进行。

注:0xcccccccc:没有初始化,调试的时候都是这个东西,程序不能访问这个地址。

  0x00000000:是Null,不指向任何东西。

原文地址:https://www.cnblogs.com/nzbbody/p/3365572.html