eval EXPR eval BLOCK |
计算expr在执行时,如果EXPR是一个单独的Perl脚本。这可以让你在你的程序中使用一个单独的,也许是用户提供的一块Perl脚本。一个eval EXPR语句分别每次被调用函数求值。
第二种形式的计算结果块时,其余的脚本解析(未执行)。
EXPR或块表中的最后计算的值
以下是用法...
# make divide-by-zero nonfatal eval { $answer = $a / $b; }; warn $@ if $@;
# __DIE__ hooks may modify error messages
{
local $SIG{'__DIE__'} =
sub { (my $x = $_[0]) =~ s/foo/bar/g; die $x };
eval { die "foo lives here" };
print $@ if $@; # prints "bar lives here"
#by www.gitbook.net
}