1. 首页
  2. 编程语言
  3. C++ 
  4. Second Edition

Second Edition

上传者: 2024-07-23 20:15:54上传 PDF文件 14.32MB 热度 9次

16.8 修复接口使用多重继承的最好的理由之一是使用控制之外的代码。假定已经拥有了一个由头文件和已经编译的成员函数组成的库,但是没有成员函数的源代码。该库是具有虚函数的类层次,它含有一些使用库中基类指针的全局函数,这就是说它多态地使用库对象。

现在,假定我们围绕着该库创建了一个应用程序并且利用基类的多态方式编写了自己的代码。在随后的项目开发或维护期间,我们发现基类接口和供应商所提供的不兼容:我们所需要的是某虚函数而可能提供的却是非虚的,或者对于解决我们的问题的基本虚函数在接口中根本不存在。假若有源代码则可以返回去修改,但是我们没有,我们有大量的依赖最初接口的已生成的代码,这时多重继承则是极好的解决方法。

对于想要深入了解多重继承与虚继承在C++中的实现,可以参考以下资源:C++面向对象技术完全剖析_源代码继承封装多态虚函数纯虚函数虚拟继承多重继承函数重载指针,它详尽地剖析了虚函数和多重继承的实现机制。C++多重继承与虚继承分析虚函数实现多态也提供了深入的分析和示例代码,帮助你更好地理解这些复杂的概念。

下面的例子是所获得的库的头文件:假定库很大并且有更多的派生类和更大的接口。注意,它包含函数A()和B(),以基类指针为参数。下面是库的实现文件:第16章多重继承。

下载地址
用户评论