Не повлияет ли на следующий код на отсутствие виртуального наследования?
Если бы так, будут ли отрицательные эффекты такими же (или такими же плохими), как и отрицательные эффекты множественного наследования без виртуального наследования, если class A
сделал элементы данных?
class A
{
public :
virtual ~A ( ) { }
virtual int foo ( ) const = 0 ;
} ;
class B : public A
{
public :
virtual ~B ( ) { }
} ;
class C : public A
{
public :
virtual ~C ( ) { }
} ;
class D : public B , public C
{
public :
virtual int foo ( ) const { return 12 ; }
} ;