Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.20;
Скачать: CL | DM;

Вниз

try finally end   Найти похожие ветки 

 
Cooller   (2007-03-22 11:39) [0]

begin
try
while (xxx) do S1;
S2;
finally
S3;
end;
S4;
end;


Если ли вариант во время выполнения блока S1 перейти сразу к выполнению S3, чтобы потом еще выполнился блок S4?


 
Сергей М. ©   (2007-03-22 11:42) [1]


> во время выполнения блока S1 перейти сразу к выполнению
> S3


Это как это ?!


 
Cooller   (2007-03-22 11:44) [2]

Ну допустим если использовать exit, то из S1 управление перейдет сразу в S3, но S4 выполнен не будет


 
Cooller   (2007-03-22 11:45) [3]

Нужный результат будет достигнут если в S1 произойдет исключение...


 
Сергей М. ©   (2007-03-22 11:45) [4]

try
while (xxx) do S1; //в блоке S1 возбудить любое исключение
S2;
except
S3;
end;
S4;

Это что ли имелось ввиду ?


 
clickmaker ©   (2007-03-22 11:45) [5]

а почему бы S4 не забрать в finally?


 
Правильный Вася   (2007-03-22 11:46) [6]

косовата логика


 
Сергей М. ©   (2007-03-22 11:48) [7]


> Cooller   (22.03.07 11:45) [3]
>
> Нужный результат будет достигнут если в S1 произойдет исключение


Не будет он достигнут - S4 выполнен не будет, поскольку при finally исключение не будет "погашено"


 
ЮЮ ©   (2007-03-22 11:54) [8]

begin
 try
   doS2 := false; //или true, заависит от логики
   while (xxx) do S1; //в блоке можно переопределить doS2
   if doS2 then S2;
 finally
   S3;
 end;
 S4;
end;


 
Аноним   (2007-03-22 11:56) [9]

Да, лучше через

> if doS2 then S2;


чем через доп. секцию except, так прозрачнее



Страницы: 1 вся ветка

Текущий архив: 2007.05.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.055 c
6-1163694731
Tiberius
2006-11-16 19:32
2007.05.20
Текст из браузера


2-1177584964
Аффтар
2007-04-26 14:56
2007.05.20
Как зарегистрировать DDL?


2-1177570495
PL
2007-04-26 10:54
2007.05.20
Не могу понять в чем проблема


15-1177076711
Ringo
2007-04-20 17:45
2007.05.20
Вот те раз! А я думал, - Медведев...


11-1157385452
RedLine
2006-09-04 19:57
2007.05.20
Поддержка тем XP