首页 >> 知识 >> C++中类的多继承

C++中类的多继承

在写这一主题的文章之前,在网上找到一篇很非常好的文章C++之继承与多态。就没有必要做重复造轮子的事件了,那就从这篇文章开始吧!

在c++中一个类可以从多个基类中派生(即可以有多个父类),这就是多继承。多继承的方式主要有两种:

1. 简单版本

类C会同时拥有类A和类B的特性(属性和方法,也就是两个类的所有成员)。这种方式很简单这里就不多说,主要讲下面这种方式。

2. 复杂版本

同样的,这个结构中类C也会同时拥有类A和类B的特性,但这就会有一个问题,类B1和B2都继承自A,那么类C的对象会同时包含两个A的对象。这样就会带来很多歧义性。

蜜桃成人网站入口看一个典型的例子“沙发-床”:

类的关系图

代码:

#pragma once#include #include using namespace std;class Furniture{public: Furniture(void) : m_weight(0){} Furniture(double weight) : m_weight(weight){} ~Furniture(void){} double GetWeight() const { return m_weight; } void SetWeight(double val) { m_weight = val; }private: double m_weight;};class Bed : public Furniture{public: Bed() : Furniture(), m_second(0) {} Bed(double weight, int second) : Furniture(weight), m_second(second){} void Sleep(int second) { m_second = second; cout
网站地图