多重继承
虚基类
在继承间接共同基类时只保留一份成员,声明虚基类的格式如下:
class<派生类名>: virtual <继承方式> <基类名>
{
//派生类体
}
- 虚基类并不是在声明基类时声明的,虚基类是在派生类的声明时候,指定继承方式下声明的。
一个基类可以在生成一个派生类时作为虚基类,当生成另外一个类时可以不作为虚基类。这样就保证了派生类中只保留一份基类的成员。
为了保证虚基类在派生类中值继承一次,应该将所有的直接派生类继承虚基类,从而避免产生二义性的问题。
在继承间接共同基类时只保留一份成员,声明虚基类的格式如下:
class<派生类名>: virtual <继承方式> <基类名>
{
//派生类体
}