先祖先后客人再自己。

#include<iostream>#include<cstdio>using namespace std;class B0
{
public:B0(){cout << "construct B0" << endl;}
};class Date{private:int year, month, day;public:Date(int i = 0, int j = 0, int k = 0):year(i), month(j), day(k){cout << "year:" << year << " month:" << month << " day:"<< day << endl;
cout  << "construct Date" << endl;}//Date(){cout << "default construct" << endl;}~Date(){cout << "destruct Date" << endl;}};class Registration:public B0, public Date{private:string number, id, sex;public:
Date d;//内嵌子对象赋值,,,学到了,以前一直以为d.year(a), d.month(b),,,Registration(string n, string i, string s, int a, int b, int c):d(a, b, c){number = n; id = i; sex = s;}Registration(Registration &r):d(r.d){number = r.number; id = r.id; sex = r.sex;}void show(){cout << "number:" << number << " sex:" << sex << " id:" << id << endl;}};int main(){string number, id, sex ;int a, c, b;while(cin >> number >> id >> sex >> a >> b >> c){Registration r(number, id, sex, a, b, c);r.show();}return 0;}

公有继承中 构造函数和析构函数的调用(包含内嵌子对象)相关推荐

  1. 继承关系中构造函数、析构函数的调用顺序详解

    构造函数: 在c++中,当声明一个派生类的对象时,派生类中包含所有父类的数据成员以及自己添加的数据成员均已被分配了内存,只是尚未进行初始化配置(但实际上基本数据类型的变量已经被赋予随机默认值). 构造 ...

  2. C++中构造函数和析构函数的调用顺序

    情况一:类B继承类A 结论一:定义变量时:先调用父类的构造函数,再调用派生类的构造函数:变量销毁时:先调用派生类的析构函数,再调用父类的析构函数. #include <iostream> ...

  3. C++虚继承中构造函数和析构函数顺序问题以及原理

    多重继承的问题:多个类B,C,-继承同一个类A导致如果X继承了B,C,-那么在X中将还有多个A中成员的拷贝,如果想要访问A中的成员如果不加名字空间将会导致二义性,这种拷贝大多是没有实际意义的,为了避免 ...

  4. php中的构造函数和析构函数,php 中构造函数和析构函数

    构造函数: 在对象实例化时被调用,一个类中只能有一个构造函数,在类中起初始化的作用. 析构函数: 在对象结束时被自动调用. 话不多说,用一段代码来说明两者的区别: //定义一个类 class Pers ...

  5. C++继承中构造函数、析构函数调用顺序及虚析构函数

    首先说说构造函数,大家都知道构造函数里就可以调用成员变量,而继承中子类是把基类的成员变成自己的成员,那么也就是说子类在构造函数里就可以调用基类的成员了,这就说明创建子类的时候必须先调用基类的构造函数, ...

  6. 构造函数和析构函数的调用顺序

    目录 构造函数和析构函数 构造函数 复制构造函数 析构函数 构造函数与析构函数的调用顺序 单继承 多继承 构造函数和析构函数 构造函数 构造函数是特殊的成员函数,与类同名,没有返回类型,而且允许重载. ...

  7. C++类继承时构造函数与析构函数的执行顺序

    C++类继承时构造函数与析构函数的执行顺序 在C++类中,类A继承类B时,如果创建一个A的对象时,会首先调用基类的构造函数,再调用派生类的构造函数,而析构函数的执行相反,但是当基类和派生类分别有一个成 ...

  8. C++中构造函数和析构函数可以抛出异常吗?

    C++中构造函数和析构函数可以抛出异常吗? 一.  析构函数 参照<Effective C++>中条款08:别让异常逃离析构函数.  总结如下: 1. 不要在析构函数中抛出异常!虽然C++ ...

  9. 多继承的构造函数和析构函数

    //程序2:多继承的构造函数 与 析构函数 #include<iostream> using namespace std;class A { public: A() { cout<& ...

最新文章

  1. 《LeetCode力扣练习》第160题 相交链表 Java
  2. Golang 学习资料
  3. ansible 修改文件变量_Ansible Playbook中的变量与引用
  4. 深入解析AsyncTask
  5. Optimization Algorithms
  6. Frame中添加一个黄色的panel
  7. oracle任务间隔,Oracle定时任务时间间隔
  8. 强化学习笔记:马尔科夫链介绍及基于Python的蒙特卡洛仿真
  9. PHP语言之表单基础
  10. 使用 Groovy 合并 MSN 聊天记录
  11. (已解决)ubuntu下网易云音乐无法打开
  12. HTML - 03 网页元素的属性
  13. 全球首次互联网8K直播,阿里工程师如何实现?
  14. 【游戏客户端】实现刮刮乐效果
  15. JME3教程:Android创建一个简单的示例
  16. PS快速将白底图片变为透明图片的解决办法
  17. 【周志华机器学习】十二、计算学习
  18. 前端报错Unknown custom element
  19. 系统分析和设计方法之信息系统构件
  20. 一级计算机考试word知识点,2017年计算机一级考试MSOffice考点解析:Word窗口及其组成...

热门文章

  1. P2234 [HNOI2002]营业额统计 (Java)
  2. 读书笔记,《刻意练习》,第四章,黄金标准
  3. 医学影像工作站程序ProDicom的说明
  4. 58同城一面【前端】
  5. 【源码共享】我花2小时写了微信官网的响应式布局HTML+CSS 换成旅行主题风格更炫酷了
  6. 太实用了!Excel VBA常用代码!
  7. 火山PC自绘高级表格及超级列表框
  8. Python练习:贪吃蛇
  9. 绘画入门新手要学的绘画基础有哪些
  10. 人脉就是钱脉,培养人脉的100个技巧。。。