默认构造函数
- 没有参数的构造函数,称为默认构造函数。
1. 合成的默认构造函数
- 当程序员没有手动定义默认构造函数时,编译器自动为这个类定义一个构造函数。
- 如果数据成员使用了“类内初始值”,就使用这个值来初始化数据成员【仅C++11支持类内初始值】
- 否则,就使用默认初始化(实际上,不做任何初始化)
注意:
- 只要手动定义了任何一个构造函数,编译器就不会生成“合成的默认构造函数”
- 一般情况下,都应该定义自己的构造函数,不要使用“合成的默认构造函数”
【仅当数据成员全部使用了“类内初始值”,才宜使用“合成的默认构造函数”】
2. 手动定义的默认构造函数
- 常称为“默认构造函数”
Human.h
#pragma once
#include <string>
using namespace std;
//定义一个"人类"
class Human {
public:
//定义了一个手动默认构造函数
Human()

本文介绍了C++中的默认构造函数,包括合成的默认构造函数和手动定义的默认构造函数。合成的默认构造函数在未手动定义时由编译器自动生成,用于类的数据成员初始化。如果数据成员使用类内初始值,编译器将使用这些值;否则,数据成员不会被初始化。手动定义的默认构造函数通常更灵活,可以自定义初始化逻辑,且会阻止编译器生成合成的默认构造函数。
最低0.47元/天 解锁文章
1451

被折叠的 条评论
为什么被折叠?



