Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Exit [D7, XP]


Dmitry_177 ©   (2007-05-06 22:55:00) 

есть примерно такой алгоритм:

try
 ...
 if .. then
   Exit;

 ...

finally
 ...
end;

Так вот посмотрев в отладчике, при вызове Exit функция вылетает, даже не выполнив то что находится в finally. Может есть какя-нибудь другая функция вместо Exit, которая так же выходит из функции, но перед этим выполнив то что находится в finally?


Amoeba   (2007-05-07 15:36:00) [1]

Abort. Тогда несомненно будет выполнено то, что находится в finally ... end


McSimm   (2007-05-06 23:05:00) [2]

возможно они были исключены оптимизатором.


Dmitry_177   (2007-05-06 23:04:00) [3]

странно то что в отладчике строки в finally пролетают..


McSimm   (2007-05-06 23:01:00) [4]

после Exit блок finally выполняется.


{RASkov}   (2007-05-06 23:01:00) [5]

procedure TForm1.Button1Click(Sender: TObject);
begin
 try
  ShowMessage('First');
  Exit;
  ShowMessage('Midle');
 finally
  ShowMessage('End');
 end;
end;
Не видно только Midle..... и это правильно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо