Обработка исключений. C#

176
13 марта 2018, 00:07

Зачем нам нужно ключевое слово finally в c# , если код после try/catch и так всегда выполняется?

Answer 1

Код находящийся в блоке finally выполнится в ЛЮБОМ случае, то есть даже если в блоках try-catch содержится return или в блоке catch содержится еще один throw.

В таких случаях код который просто идет после блока catch - не выполнится.

Answer 2

Код после catch выполняется всегда только в том редком случае, когда вы ловите все исключения (что очень не рекомендуется). Обычно вы ловите только нужные исключения, и код за catch'ем вполне имеет право не выполниться.

Answer 3

finally выполняет код в любом случае, после завершения конструкций в try, и не важно будет поймано исключение или нет. Чаще всего используется для освобождения ресурсов. catch выполняется только при возникновении исключения.

READ ALSO
Глюк при добавлении строк в БД Access - C#

Глюк при добавлении строк в БД Access - C#

ЗдравствуйтеИмеется БД Access из двух связанных таблиц

204
Активация скрипта в другом скрипте

Активация скрипта в другом скрипте

Допустим, у меня есть скрипт, и я хочу что бы этот скрипт активировался в другом скрипте, как мне это сделать? Заранее спасибо!

180
Ошибка при удалении символов из строки

Ошибка при удалении символов из строки

Допустим, есть строка s, ее длина - 2 символаКогда я пишу:

309
Unity3D: Отклонить вектор на N градусов

Unity3D: Отклонить вектор на N градусов

Имеется некоторый единичный вектор, который представляет собой координату в сферическом пространствеНеобходимо получить из него 4 вектора...

192