perl中的异常处理

前端之家收集整理的这篇文章主要介绍了perl中的异常处理前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经看到在eval块的末尾出现1,用于perl中的异常处理.为什么需要这个?如果eval块返回false会发生什么?

即使我们不直接使用$@但是CPAN的一些库要进行异常处理,这是否需要?

解决方法

如果eval块返回false会发生什么?

eval返回该错误值.

为什么需要这个?

这不是必需的.

my $foo = eval { foo() };

如果你对$foo在例外情况下是不确定的话,那就完全没问题.

你看到的是什么

if (!eval { foo(); 1 }) {
   ...
}

代码返回true,让if知道eval成功. eval将在异常时返回false.

猜你在找的Perl相关文章