我试图弄清楚为什么会抛出这个错误.如果在try块内部发生错误而不打印10,它不应该只打印0吗?
#!/usr/bin/perl
use 5.006;
use strict;
use warnings;
use Try::Tiny;
my $test = 0;
try{
$test = 10;
my $s = $test /2;
}
catch{
print $_;
}
print $test;
Run Code Online (Sandbox Code Playgroud)
你错过了; 在try/catch"声明"之后; 你的代码传递了print $test作为额外参数的结果,以捕获它期望finally子句的位置,并在它进入try块之前死掉.