У меня есть базовый класс A, класс B наследует от A, класс C, который является классом класса, наследуемым от A. class D, наследуется от C. Отношение выглядит следующим образом:
A
/ \
B C (template class)
\
D
Я могу создать объект O1 с помощью D-объекта D1, тогда я хочу, чтобы динамическое преобразование O1 было объектом C1 типа C1. Но я считаю, что это терпит неудачу. Мой вопрос в том, почему этот процесс терпит неудачу?
Затем я использую static_cast для создания объекта C типа C2 из объекта D D, и я проверил C2, имеет правильное значение из D2. Всегда ли удается преобразовать из типа D в тип C с помощью static_cast?
Спасибо!!!