初始化列表
一些注意事项
由来
在类中,对象成员在此处被声明:
随着对象被实例化,对象整体被定义,调用构造函数赋值。
至此,我们还缺少对于成员的定义。我们可以将初始化列表,理解为对象成员定义的位置。
注意
- 每个成员变量在初始化列表中只能出现一次(初始化只能初始化一次)。
- 对于自定义类型而言,自动的在初始化列表当中去调用它的构造函数。
- 对于内置类型来说,如果没有缺省值,则不做处理。所以需要给初始化列表引入一个缺省值(c++11),如下图:
必须在初始化列表被初始化的成员
- 引用成员变量。
- const成员变量。
- 自定义类型成员(且该类没有默认构造函数时,会生成默认的构造并自动调用)。
- 尽量使用初始化列表初始化。
- 成员变量在类中声明次序就是其在初始化列表中的初始化顺序,与其在初始化列表中的先后次序无关。
初始化列表
https://weihehe.top/2024/07/04/初始化列表/