我最近阅读了Perl.com文章中的"Perl中面向对象的异常处理".在Perl中使用异常是否有意义?
我有一个Perl例程来管理错误检查.基于先前的成功,大约有10种不同的检查,有些是嵌套的.这些通常不是特殊情况,我需要croak/ die.此外,一旦发生错误,执行其余检查就没有意义了.
但是,我似乎无法想出一个简洁的方法来解决这个问题,除非使用类似于以下可怕的黑客的东西:
sub lots_of_checks
{
if(failcond)
{
goto failstate:
}
elsif(failcond2)
{
goto failstate;
}
#This continues on and on until...
return 1; #O happy day!
failstate:
return 0; #Dead...
}
Run Code Online (Sandbox Code Playgroud)
我希望能做的事情是这样的:
do
{
if(failcond)
{
last;
}
#...
};
Run Code Online (Sandbox Code Playgroud)