C++入门笔记(五)继承与派生

本文详细介绍了C++中的类继承与派生概念,包括派生类的定义、访问控制(公有、私有、保护继承)、类型兼容规则、派生类的构造和析构函数,以及派生类成员的标识与访问,特别讨论了作用域分辨符、虚基类及其构造函数的应用。
摘要由CSDN通过智能技术生成

1、类的继承与派生    

      类的继承,是新的类从已有类那里得到已有的特性。从已有类产生新类的过程就是类的派生。

      原有的类称为基类或父类,产生的新类称为派生类或子类。

      (1)派生类的定义

               class 派生类名:继承方式   基类名1,继承方式    基类名2,继承方式  ...

               {

                       派生类成员声明;

               };

               例如: Base1 和 Base2 是已经定义的类,下面是定义一个 名为 Derived 的派生类:

class Derived:public Base1,private Base2
{
public:
      Derived();
      ~Derived();
};

              一个派生类,可以同时有多个基类,这种情况称为多继承,只有一个直接基类的情况称为单继承。

              继承方式规定了如何访问从基类继承的成员。默认缺省为私有继承(private)。

              派生类成员是指除了从基类继承来的所有成员之外,新增加的数据和函数成员。

      (2)派生类生成过程

               a、吸收基类成员

                     这是继承的第一步,是将基类的成员全盘接收

                     这样派生类实际包含了它的基类中除构造函数和析构函数之外的所有成员

               b、改造基类成员

                     对基类成员的改造包括两个方面,一是基类成员的访问控制问题,主要依靠派生类定义时的继承方式来控制

                      另一个是对基类数据或函数成员的覆盖或隐藏,而隐藏就是简单地在派生类中声明一个和基类数据或函数同

名的成员。如果派生类声明了一个和某基类成员同名的新成员(如果是成员函数,则参数表也要相同,参数不同的情况属

于重载),派生的新成员就隐藏了外层同名成员(称作同名隐藏)。

              c、添加新的成员

2、访问控制

      (1)公有继承

        当类的继承方式为公有继承时,基类的公有成员和保护成员的访问属性在派生类中不变,而基类的私有成员不可直接访问

      (2)私有继承

        当类的继承方式为私有继承时,基类中的公有成员和保护成员都以私有成员身份出现在派生类中,

而基类的私有成员在派生类中不可直接访问。

       (3)保护继
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值