Здравствуйте, Kernan, Вы писали:
K>Здравствуйте, Максим Рогожин, Вы писали:
МР>>Например, как решается такая задача
K>Тут надо разруливать через статический полиморфизм.
Можно и через динамический:
http://www.cplusplus.com/reference/memory/dynamic_pointer_cast
http://en.cppreference.com/w/cpp/memory/shared_ptr/pointer_cast