Delphi-Help

Finally

Печать
Рейтинг пользователей: / 0
ХудшийЛучший 

Finally

Описание

Try
Statement
{Statement...}
Finally
Statement
{Statement...}
End;

Ключевое слово Finally используется, чтобы отметить начало конечного блока инструкций в инструкции Try. Они будут выполнены независимо от того, что случится в инструкциях Try.
Однако, предложение Finally фактически не обрабатывает никаких исключений - программа закончится, если никакое предложение Except не найдено (см. примечания ниже).
Try-Finally обычно используется подпрограммой, чтобы позволить освободить ресурсы.

Пример кода

var
number, zero : Integer;
begin
// Попытка деленя целого числа на нуль - чтобы поднять исключение
number := -1;
Try
zero   := 0;
number := 1 div zero;
ShowMessage('number / zero = '+IntToStr(number));
Finally
if number = -1 then
begin
ShowMessage('Числу не было присвоено значение - использование значения по умолчанию');
number := 0;
end;
end;
end;

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

Примечание

Try
...
Except
...
Finally
...
End;

где исключения заманены в ловушку и обработаны, но в любом случае, набор инструкций очистки будут выполнены. Это может быть достигнуто с помощью вложенных инструкций Try:
Try
Try
...
Except
...
End;
Finally
...
End;

Авторизация



Счетчики