1 捕获错误
# Catch exception with eval# This is an exception of divided by zero# if errors happened, perl stores it in $@# you should check $@ immediately after eval {} block# Note, eval is a function, not a flow control clause# you need to add ';' after the blockuse strict;use warnings;eval { return 2 / 0;};print $@ if $@;
2 动态代码
# Dynamic code with eval# syntax: eval "code"# The script will execute the code after eval in run timeuse strict;use warnings;sub test { my $num1 = 2; my $num2 = 3; foreach my $op (qw!+ - * /!) { print "$num1 $op $num2 equals "; print eval "$num1 $op $num2", "\n"; }}test()