第十二周阅读程序(3):多重继承
来源:互联网 发布:单片机技术论坛 编辑:程序博客网 时间:2024/06/05 06:47
代码:
#include <iostream>using namespace std;class Base{public: Base(char i) { cout<<"Base constructor. --"<<i<<endl; }};class Derived1:virtual public Base{public: Derived1(char i,char j):Base(i) { cout<<"Derived1 constructor. --"<<j<<endl; }};class Derived2:virtual public Base{public: Derived2(char i,char j):Base(i) { cout<<"Derived2 constructor. --"<<j<<endl; }};class MyDerived:public Derived1,public Derived2{public: MyDerived(char i,char j,char k,char l,char m,char n,char x): Derived2(i,j), Derived1(k,l), Base(m), d(n) { cout<<"MyDerived constructor. --"<<x<<endl; }private: Base d;};int main(){ MyDerived obj('A','B','C','D','E','F','G'); return 0;}
运行结果:
学习心得:
声明Base为公有继承的虚基类,而MyDerived为Derived1和Derived2的派生类,系统只执行最后的派生类对虚基类的构造函数的调用,所以Base类的数据成员不会被多次初始化。
0 0
- 第十二周阅读程序(3):多重继承
- 第十二周 多重继承-阅读程序(3)
- 第十二周阅读程序(1):多重继承
- 第十二周阅读程序(2):多重继承
- 第十二周阅读程序(4):多重继承
- 第十二周阅读程序(5):多重继承
- 第十二周阅读程序(6):多重继承
- 第十二周阅读程序(7):多重继承
- 第十二周 阅读程序(1)多重继承
- 第十二周阅读程序1:多重继承-域运算符
- 第十二周阅读程序2:多重继承的构造函数
- 第十二周 阅读程序 多重继承 理解多重继承中构造函数
- 第十二周程序填空-多重继承
- 第十二周 程序填空:多重继承
- 第十二周 程序填空-多重继承
- 第十二周 阅读项目 多重继承中数据关系
- 第十二周 阅读程序 虚基类 中的继承
- 第11周-程序阅读1-3-多重继承
- 纯C实现sqrt,cos,sin,atan2
- CSS/Properties/position
- 论文笔记:A survey on vision-based human action recognition.
- 素因子分解
- 查看linux系统语言并修改
- 第十二周阅读程序(3):多重继承
- 八皇后问题
- 【GoRK3288】3.GPIO操作方法(1)
- 【C语言】strcat函数的实现
- 【GoRK3288】4.GPIO操作方法(2)
- JQuery中$.ajax()方法参数详解
- Oracle数据库生成UUID
- Hipi相关操作,文件搜索部分
- 835全讯网让你成为高手的技巧