假定通过多个派生路径继承名为x的成员,有下面三种可能性:
1、如果每个路径中x表示同一虚基类成员,则没有二义性,因为共享该成员的单个实例。
2、如果在某个路径中x是虚基类的成员,而在另一路径中x是后代派生类的成员,也没有二义性--特定派生类实例的优先级高于共享基类实例。
3、如果沿每个继承路径x表示后代派生类的不同成员,则该成员的直接访问时二义性的。像非虚多重继承层次一样,这种二义性最好用在派生类中提供覆盖实例的类来解决。
假定通过多个派生路径继承名为x的成员,有下面三种可能性:
1、如果每个路径中x表示同一虚基类成员,则没有二义性,因为共享该成员的单个实例。
2、如果在某个路径中x是虚基类的成员,而在另一路径中x是后代派生类的成员,也没有二义性--特定派生类实例的优先级高于共享基类实例。
3、如果沿每个继承路径x表示后代派生类的不同成员,则该成员的直接访问时二义性的。像非虚多重继承层次一样,这种二义性最好用在派生类中提供覆盖实例的类来解决。