Здравствуйте, Геннадий Васильев, Вы писали:
[]
ГВ>Вот так:
ГВ>ГВ>class B : public A {};
ГВ>class C : public A {};
ГВ>class D : public B, public C {};
ГВ>
Это концептуально оно ромбовидное, а так будет дерево.
хъ
ГВ>Так сложнее разобраться в том, что на самом деле может делать тот или иной класс.
Это определяется его интерфейсом, а не положением в иерархии.
хъ
AS>>Зачем динамически сверху вниз приводить?
ГВ>Ты у меня спрашиваешь?
Не знаю.
Наверное затем, что приводить снизу вверх не нужно, это компиляторы делают.
Не, ну почему все путают downcast и upcast? Я уже задолбался! Базовые классы, как правило, располагаються вверху.
хъ
ГВ>Или — злоупотребление object.
Это не злоупотребление. Узаконенная лажа перестает быть лажой.
хъ