对于派生类的构造函数,创建对象时构造函数执行的顺序

1)基类的构造函数。

2)成员对象构造函数。

3)派生类本身的构造函数。

记忆方式:先父母,再客人,后自己。

cpp 复制代码
#include <iostream>
#include <thread>
#include <string>
#include <iostream>
using namespace std;

class AAA {
public:
	AAA() { cout<<"AAA"<<endl;}
	~AAA(){} 
};
class CCC {
public:
	CCC() { cout<<"CCC"<<endl;}
	~CCC() {}
};

class BBB :public AAA{
public:
	BBB() { cout<<"BBB"<<endl;}
	~BBB() {}
private:
	CCC c;
};

int main()						
{
	BBB *b = new BBB;
	delete b;

	return 0;
}
相关推荐
喜欢吃燃面1 小时前
深入 C++ STL:从 unordered_set与unordered_map到底层哈希表的原理与实现
数据结构·c++·散列表
FlightYe1 小时前
音视频修炼之基础理论(五):AAC格式与解析
android·linux·c++·音视频·aac
ShineWinsu2 小时前
对于MySQL:数据库的操作的解析
linux·数据库·c++·mysql·面试·笔试·库的操作
云小逸2 小时前
C++ 第一阶段:对象、内存与生命周期
开发语言·c++
夜航海图2 小时前
S-57 数据解剖:把一个 ENC 文件拆给你看
c++
(Charon)3 小时前
【C++】网络缓冲区设计(三):Chain Buffer链式缓冲区、动态扩容与跨节点读写
服务器·c++
软行4 小时前
LeetCode 每日一题 3876. 构造奇偶一致的数组 II
c++·算法·leetcode
繁星蓝雨5 小时前
C++设计原理———重载(extern “C“的由来、顺序依赖、语义依赖、overload、名称修饰符、对象操作、运算符重载、新增运算符、枚举和布尔类型)
c语言·c++·extern c·overload·重载·语义依赖·顺序依赖
handler015 小时前
【Linux】虚拟地址空间解析
linux·运维·c++·线程·进程·虚拟地址空间·虚拟地址
(Charon)5 小时前
【C++】网络缓冲区设计(二):Ring Buffer环形缓冲区、head/tail与跨界读写
开发语言·c++