|
#1
|
||||
|
||||
try
Доброго времени суток!
У меня есть вопрос (вот уж действительно для начинающих ): Код:
try ... finally ... end; Что это такое и как этим пользоваться? |
#2
|
||||
|
||||
Начнем по порядку. Полный вид конструкции выглядит так:
Код:
try ... except ... finally ... end; Для чего нужно? Для обработки исключений. Например Код:
try F:=StrToFloat(S);//Переобразование типов except Application.MessageBox(Application.Handle,'Неправильный формат данных!','Ошибка',MB_OK);//Если возникло исключение (т.е. ошибка) преобразования, тогда вывести MessageBox. finally //А вот в данном блоке идет код который будет выполняться независимо от того было исключение или нет //Например Application.MessageBox(Application.Handle,'Обработка данных завершена' данных!','Инфо',MB_OK); end; Чаще всего используется связка try ... except ... end; . Хорошо написанная программа не требует документации ICQ 9-184-668. |
#3
|
||||
|
||||
Большое спасибо! Всё понятно
|
#4
|
||||
|
||||
Thrasher, глупости Вы говорите.
Есть 2 разные конструкции: Код:
try ...{блок кода 1.1} except ...{блок кода 1.2} end; Код:
try ...{блок кода 2.1} finally ...{блок кода 2.2} end; {блок кода 1.2} будет выполнен только в том случае если в {блок кода 1.1} будет сгенерирована ошибка. Для второй конструкции: {блок кода 2.2} будет выполнен в любом случае, даже если в {блок кода 2.1} будет сгенерирована ошибка и он выполнится не полностью, а только частично. А код приведенный Thrasher не будет даже компилироваться. На будующее советую перед тем как давать советы в виде кода пробовать его на работоспособность. |
#5
|
||||
|
||||
Прошу прощения за ложную информацию, Aristarh Dark, рассказал как есть на самом деле. Такой код, как привёл я не будет компилироваться. Впредь буду внимательнее.
Хорошо написанная программа не требует документации ICQ 9-184-668. |