C++中构造函数调用顺序
2015-08-06 10:52
295 查看
C++中若某类a从基类b、虚基类c派生而来,且该类中具有对象成员d,则在构造该类的对象时执行构造函数的顺序?
构造一个类的对象的一般顺序是:class a:public b, virtual public c{}; 1.如果该类有直接或间接虚基类,先执行虚基类的构造函数; 2.如果该类有其他基类,按照他们在继承声明列表中出现的顺序分别执行构造函数,但是不再执行它们的虚基类的构造函数。 3.按照在类定义中出现的顺序,对派生类中新增的成员对象进行初始化。 4.执行构造函数函数体。 所以本题构造函数执行顺序为:c,b,d,a;
相关文章推荐
- 转:C++输入一行字符串的一点小结
- C++_模板类的友元运算符重载_原理
- C/C++知识要点2——STL中Vector、Map、Set容器的实现原理
- 黑马程序员---C语言基础---结构体、枚举、typedef、宏、static和extern
- 图像显示
- VC++2010 MFC程序怎么在其他电脑运行
- 队列(C语言)
- 链表(C语言)
- 《手把手教你学51单片机-C语言》之十一--------UART串口通信
- 顺序表(C语言)
- JAVA基础篇三(Java,C++中的异常机制)
- 64位的Ubuntu系统上使用汇编nasm和C语言
- C++中重载、覆盖、隐藏之间的关系
- C++11 标准新特性: 右值引用与转移语义
- 指针与引用的区别
- (C/C++学习笔记)指针做函数参数形成回调
- C++ vector容器类型及初始化方法
- c++中的map用法详解
- C语言字符串处理函数
- Berland National Library