Вопросы

Как определить неудачные приведения с помощью оператора dynamic_cast?

Scott Meyer в своей книге Effective C++ говорит, что dynamic_cast используется для безопасного приведения типов вниз или поперек иерархии наследования. То есть вы используете dynamic_cast для приведения указателей или ссылок на объекты базового класса к указателям или ссылкам на производные или одноуровневые объекты базового класса таким образом, чтобы вы могли определить, были ли приведения успешными.

Неудачные приведения обозначаются нулевым указателем (при приведении указателей) или исключением (при приведении ссылок).

Я хотел бы получить два фрагмента кода, показывающих неудачное приведение в случае указателя приведения, и может быть указана ссылка на приведение.

Вы просите примеры кода, проверяющего, является ли указатель нулевым, и кода, перехватывающего исключение?   —  person nitin_cherian    schedule 16.07.2012

Нет. Я не понимаю, как броски могут потерпеть неудачу, как упоминал Скотт. Фрагмент кода определенно поможет.   —  person nitin_cherian    schedule 16.07.2012

Читать:
Сбой развертывания Azure Pipeline в службе веб-приложений с отсутствующим обязательным свойством OutputPath

en.wikipedia.org/wiki/Dynamic_cast   —  person nitin_cherian    schedule 16.07.2012

@JamesMcNellis: Пожалуйста, помните, что все мы начинаем как новички. В любом случае, я получил фрагмент кода от Рида.   —  person nitin_cherian    schedule 16.07.2012

Похожие записи

ошибка TS2769: этому вызову не соответствует никакая перегрузка Перегрузка 1 из 5

admin

Используйте переменную powershell для выполнения программы по пути к файлу в переменной

admin

Python: JSON не читает и символ

admin

Загрузка пакета приложения завершилась ошибкой: EISDIR: недопустимая операция в каталоге (Elastic Beanstalk развертывает VSTS)

admin

Требуется фильтр на платформе Api

admin

Разделитель строк / разрыв в Discord.js встраивать сообщение

admin