Есть классы B1, B2, B3 ,унаследованные от A и классы D1, D2, D3, унаследованные от некоего C и соотвестсвующего класса B_i.
Есть массив указателей на объекты класса С, в которые на самом деле суются указаетли на D_i. Вопрос: как из объекта этого массива получить указатель на B_i?
Здравствуйте, Аноним, Вы писали:
А>Есть классы B1, B2, B3 ,унаследованные от A и классы D1, D2, D3, унаследованные от некоего C и соотвестсвующего класса B_i. А>Есть массив указателей на объекты класса С, в которые на самом деле суются указаетли на D_i. Вопрос: как из объекта этого массива получить указатель на B_i?
Здравствуйте, Аноним, Вы писали:
А>Есть классы B1, B2, B3 ,унаследованные от A и классы D1, D2, D3, унаследованные от некоего C и соотвестсвующего класса B_i. А>Есть массив указателей на объекты класса С, в которые на самом деле суются указаетли на D_i. Вопрос: как из объекта этого массива получить указатель на B_i?
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, jazzer, Вы писали: J>>dynamic_cast
А>И больше никак? А если как-то поменять семейственность. Может еще один класс куда-нибудь ввести?
можно и напрямую:
D_1 d1;
C* pc = &d1;
B_1* pb = (D_1*)pc;