virtual public и просто public
От: Vasiliy_Krasnokutsky Россия  
Дата: 16.09.02 08:04
Оценка:
Доброго времени суток,
Вопрос в следующем, чем отличается виртуальное наследование от обычного наследования.
Я знаю, что если сделать следующее:
class A {public: int x();};
class C: public A {};
class D: public A {};
class E: public C, public D {};
E EObject;
EObject.x(); //Работать не будет ввиду неизвестности какой код вызывать C::x() или D::x()

А если наследовать виртуально, то предок будет считаться одним и все будет работать. Но вот зачем это нужно и где применяется то и другое наследование ???
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.