多重继承

C++ 的更新版本引入了继承的“多重继承”模型。 在多继承关系图中,派生类可以具有大量直接基类。 考虑下图中的关系图。

简单多继承关系图

基本多重继承

该图中的关系图显示了类 CollectibleString。 它类似于 Collectible(可包含在集合中),并像一个 String。 多重继承是解决此类问题的好方法(其中,一个派生类具有多个基类的特性),因为易于构成 CollectibleCustomer、CollectibleWindow 等。

如果特定应用程序不需要任一类的属性,则任一类既可以单独使用又可与其他类组合使用。 因此,给定上图中描述的层次结构,您可以构成不可收集的字符串和不是字符串的可收集内容。 使用单一继承时,无法实现此灵活性。

请参见

参考

多个基类

派生类概述

多重继承