[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Обработка исключений на perl



В сообщении от Среда 16 Ноябрь 2005 15:39 Dmitry E. Oboukhov написал(a):

> так вот я столкнулся с тем, что данный код не рабочий, написал такой вот
> тест:
> dimka:[/home/dimka]$ cat test.pl
> #!/usr/bin/perl
>
> sub testik
> {
>   eval
>   {
>     return;
>   };
>   print "Privet\n";
> }
>
> то есть return из под eval не работает

Если единственная цель этого действия - это организация исключений через 
обрабочик die, то нужно всю логику блока исключений внести внутрь eval и 
сделать такую обертку:

my $val = eval {
  # некоторый код, который может что-то возвратить через return,
  # а может сгенерировать исключение.
};
return $val unless $@;
# тут обработчик исключения


-- 
Best regards, Alexander Lourier. http://aml.rulezz.ru

Reply to: