Classes and class hierarchies
C.147
Используйте `dynamic_cast` к ссылочному типу, когда отсутствие требуемого класса считается ошибкой
Причина
Приведение к ссылке выражает намерение получить корректный объект, поэтому приведение должно успешно завершиться. dynamic_cast в этом случае выбросит исключение, если не удастся.
Пример
std::string f(Base& b)
{
return dynamic_cast<Derived&>(b).to_string();
}
Контроль
???