Я всегда избегал приведений в C ++ (static_cast
, const_cast
, dynamic_cast
[я также избегаю RTTI] и т. Д.), Потому что я считаю их пустой тратой текста и никогда не видел никаких преимуществ, поэтому я используюПреобразование в стиле C исключительно.
Мой вопрос: если у вас есть иерархия наследования и указатель на базовый тип, можете ли вы безопасно привести базовый указатель к производному указателю с приведением в стиле C (при условии, чтопочему-то вы абсолютно уверены, что базовый указатель указывает на экземпляр производного типа) без каких-либо событий, происходящих за кулисами, которые вызовут, казалось бы, необъяснимые сбои?
Я спрашиваю об этом, потому что прочитал в одном из комментариев другой вопросчто использование приведения в стиле C из базового к производному типу не будет «корректировать указатель» или что-то в этом роде.Я постараюсь найти точный комментарий снова.