C++面向对象知识点八:继承与派生

继承

继承允许我们依据一个类来定义另一个类。

已有的类称为基类,新建的类称为派生类。

class <派生类名>: <继承方式> <基类名>

// 具体的:

class A           // 基类
{
    ...
};

class B: public A  // 公有继承(派生)
{
    ...
};

class C: private A  // 私有继承(派生)
{
    ...
};

class D: protected A  // 保护继承(派生)
{
    ...
};

三种访问权限在继承中的特点

继承方式 基类成员访问属性 在派生类中的访问属性
public public public
protected protected
private private
protected public protected
protected protected
private private
private public private
protected private
private private

           1.private 成员只能被本类成员(类内)和友元访问,不能被派生类访问;

           2.protected 成员可以被派生类访问。

一个派生类继承了所有的基类方法,但下列情况除外:

  • 基类的构造函数、析构函数和拷贝构造函数。
  • 基类的重载运算符。
  • 基类的友元函数。

多继承

多继承即一个子类可以有多个父类,它继承了多个父类的特性。

C++ 类可以从多个类继承成员

class <派生类名>: <继承方式1> <基类名1>, <继承方式2> <基类名2>, ...
{
     ...
};

 

猜你喜欢

转载自blog.csdn.net/Doutd_y/article/details/82112684