Обработка исключений в C ++: в отношении блока try - PullRequest
0 голосов
/ 08 ноября 2018

В C ++, какой смысл использовать блок try? (когда мы явно «бросаем» проблему) Я думаю, что в Java исключение можно найти в любом месте блока try без оператора throw.

в противном случае 'try' является синтаксическим требованием для работы 'throw'?

поправьте меня, пожалуйста, если какая-либо часть моего вопроса неверна.

1 Ответ

0 голосов
/ 09 ноября 2018

Насколько я знаю, использование try-блока в C ++ аналогично использованию try-блока в Java.Синтаксис для finally отличается, но принципы те же.Поскольку ваше понимание Java не ответило на ваш вопрос для вас, я дам объяснение, игнорирующее ссылку на вопрос Java. (Это не предназначено для полного объяснения обработки исключений, просто для использования блока try. Более подробная информация доступна в различных ссылках на эту тему.)

Предположим, исключениеброшенКак вы предотвращаете это от завершения вашей программы?Вы должны поймать это.(Имеет смысл до сих пор? Бросать что-то с ожиданием, что это будет поймано?) Как вы ловите исключение?С ключевым словом "catch".

ОК, давайте посмотрим на ключевое слово " catch " в удобной онлайн-ссылке, такой как cppreference.com.Эта конкретная ссылка направляет вас к try-block , где описано использование «catch».В частности, «catch» используется как часть блока try.(Блок try не состоит из простого «try», за которым следует составной оператор; предложения catch также являются частью блока try .) Чтобы использовать ключевое слово «catch» вваша программа, ваша программа нуждается в try-блоке.

Таким образом, использование try-блока позволяет перехватывать исключения.Если в вашей программе нет блоков try, то первое выброшенное исключение будет terminate вашей программой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...