【发布时间】:2010-12-03 12:13:18
【问题描述】:
这些子例程中哪一个不像另一个?
sub or1 {
my ($a,$b) = @_;
return $a || $b;
}
sub or2 {
my ($a,$b) = @_;
$a || $b;
}
sub or3 {
my ($a,$b) = @_;
return $a or $b;
}
sub or4 {
my ($a,$b) = @_;
$a or $b;
}
我从 C 和 Perl 4 来到 Perl 5 并一直使用 || 直到我看到更多使用 or 的脚本并且我喜欢它的外观。但正如上面的测验所示,对于粗心的人来说,它并非没有陷阱。对于同时使用这两种构造或大量使用or 的人,您使用什么经验法则来决定使用哪个构造并确保代码按照您的想法执行?
【问题讨论】:
-
我愿意花 200 美元搞定日美关系,特雷贝克。
标签: perl short-circuiting