perl – 如果没有包或对象引用,则无法调用方法“try”

前端之家收集整理的这篇文章主要介绍了perl – 如果没有包或对象引用,则无法调用方法“try”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在perl中有一个try catch块

try {
    //statement 1
    //statement 2
};
catch Error with
{
    print "Error\n";
}

当我运行perl程序时,我收到以下错误

Can’t Call method “try” without a package or object reference at…

解决方法

Perl不提供try或catch关键字.要捕获die抛出的“异常”,可以设置$SIG {__ DIE__}处理程序或使用 eval.块形式优先于字符串形式,因为解析在编译时发生一次.

eval {
    // statement 1
    // statement 2
}
if ($@) {
    warn "caught error: $@";
}

有各种模块提供更传统的类似尝试的功能,例如Try::Tiny.

猜你在找的Perl相关文章