C++入门学习:继承中的构造和析构以及同名成员情况

继承中的构造和析构

类中成员的初始化:成员属于那个类,则必须要该类对其初始化,即调用该类的构造函数对其进行初始化(在对象初始化列表中显示调用)

派生类构造的顺序:先调用父类构造函数初始化父类成员,再调用自己的构造函数对自己的成员进行初始化

派生类中有其他类的对象的情况下的构造顺序:

1、调用父类构造函数

2、调用类中其余类对象的构造函数

3、调用派生类自己的构造函数

#include <iostream>

using namespace std;

class Test
{
public:
	Test(int a)
	{
		cout << "Test 构造函数被调用" << endl;
	}
	~Test()
	{
		cout << "Test 析构函数被调用" << endl;
	}
};

class A
{
public:
	A()
	{
		cout << "A的 无参构造被调用" << endl;
	}
	A(int a, int b)
	{
		a1 = a;
		a2 = b;
		cout << "A的构造函数被调用" << endl;
	}
	~A()
	{
		cout << "A的析构函数被调用" << endl;
	}
private:
	int a1;
	int a2;
};

/*
类中成员的初始化:成员属于哪个类,则必须要该类对其初始化
======>必须调用该类的构造函数对其进行初始化
======> 如何调用基类的构造函数?
======> 在对象初始化列表中显示调用

派生类构造顺序:1、先调用父类构造函数构造父类成员
				2、再调用自己的构造函数对自己的成员进行初始化
析构的顺序和构造顺序相反

组合和继承在一起的时候构造的顺序:
				1、先调用父类构造函数
				2、再调用组合对象的构造函数
				3、调用派生类自己的构造函数
析构的顺序和构造的顺序相反
*/
class B:public A
{
public:
	B(): t1(1), t2(2), A(1,2)
	{
		cout << "B的构造函数被调用" << endl;
	}
	~B()
	{
		cout << "B的析构函数" << endl;
	}
private:
	Test t1;
	Test t2;
};

class P1
{
public:
	P1()
	{
		cout << "P1 的构造函数被调用" << endl;
	}
	~P1()
	{
		cout << "P1 的析构函数被调用" << endl;
	}
};

class Child:public P1
{
public:
	Child()
	{
		cout << "Child 的构造函数被调用" << endl;
	}
	~Child()
	{
		cout << "Child 的析构函数被调用" << endl;
	}
};

int main()
{
	//A a;
	//B b;
	Child c1;
	return 0;
}

继承中的同名成员

派生类的同名成员符屏蔽基类的同名成员(继承过来的同名成员空间还是存在的)

如果需要使用基类成员,需要使用域解析符进行操作


重载:类中的函数重载必须在同一个类中进行

派生类中不能重载基类的函数,如果派生类重载了基类的函数,则会屏蔽所有基类的同名函数


基类中的静态成员函数被所有派生类所共享


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
信息数据从传统到当代,是一直在变革当,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古以来的短板,有效的提升管理的效率和业务水平。传统的管理模式,时间越久管理的内容越多,也需要更多的人来对数据进行整理,并且数据的汇总查询方面效率也是极其的低下,并且数据安全方面永远不会保证安全性能。结合数据内容管理的种种缺点,在互联网时代都可以得到有效的补充。结合先进的互联网技术,开发符合需求的软件,让数据内容管理不管是从录入的及时性,查看的及时性还是汇总分析的及时性,都能让正确率达到最高,管理更加的科学和便捷。本次开发的医院后台管理系统实现了病房管理、病例管理、处方管理、字典管理、公告信息管理、患者管理、药品管理、医生管理、预约医生管理、住院管理、管理员管理等功能。系统用到了关系型数据库王者MySql作为系统的数据库,有效的对数据进行安全的存储,有效的备份,对数据可靠性方面得到了保证。并且程序也具备程序需求的所有功能,使得操作性还是安全性都大大提高,让医院后台管理系统更能从理念走到现实,确确实实的让人们提升信息处理效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值