虚基类的和虚函数.pptVIP

  • 1
  • 0
  • 约2.03千字
  • 约 50页
  • 2020-09-04 发布于福建
  • 举报
5.2.2虚基类 1.虚基类的概念 在C++语言中,一个类不能被多次说明为一个派生 类的直接基类,但可以不止一次地成为间接基类。这 就导致了一些问题。为了方便说明,先介绍多继承的 “类格”表示法。 派生类及其基类可用一有向无环图(DAG)表示,其 中的箭头表示“由派生而来”。类的DAG常称为一个 “类格”。复杂类格画出来通常更容易理解。例如 20138-3 回L对象数据成员 例5-19 A对象数据成员 class L L对象数据成员 B对象数据成员 class A: public L C类自己数据成员 class B: public L C的对象 class C: public A, public B i public void foi next=0; 这时,next有两个赋值语 句next=0;具有二义性,它是 将A:next置为零,还是将 B:next置为零,或者将两者 都置为0,需要在函数f0中被 显式的说明 如果希望间接基类L与其派生类的关系是如下图 C艹语言提供了这种描述手段。它将L说明为A和B的虛基类。 20138-3 当在多条继承路径上有一个公共的基类,在这些 路径中的某几条路经汇合处,这个公共基类就会产生 如果只想保存这个基类的一个实例,可以将这个 公共基类说明为虚拟基类或称虚基类 它仅是简单地将关键字 virtua加到基类的描述上, 例如改写上述例子为例5

文档评论(0)

1亿VIP精品文档

相关文档