继承与派生的概念派生类的声明方式派生类的构成派生.PPT

继承与派生的概念派生类的声明方式派生类的构成派生.PPT

继承与派生的概念派生类的声明方式派生类的构成派生

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 现在,将类A声明为虚基类,方法如下: class A//声明基类A {…}; class B :virtual public A //声明类B是类A的公用派生类,A是B的虚基类 {…}; class C :virtual public A //声明类C是类A的公用派生类,A是C的虚基类 {…}; 注意: 虚基类并不是在声明基类时声明的,而是在声明派生 类时,指定继承方式时声明的。因为一个基类可以在生成一个派 生类时作为虚基类,而在生成另一个派生类时不作为虚基类。声 明虚基类的一般形式为 class 派生类名: virtual 继承方式 基类名 经过这样的声明后,当基类通过多条派生路径被一个派生类 继承时,该派生类只继承该基类一次。 在派生类B和C中作了上面的虚基类声明后,派生类D中的成员 如图5.23所示。 需要注意: 为了保证虚基类在派生类中只继承一次,应当在

文档评论(0)

1亿VIP精品文档

相关文档