当是Perl的标操作者逗号有用吗?
-
18-09-2019 - |
题
没有任何理由使用标逗号操作者其他任何地方比在 for
循环?
解决方案
由于Perl标逗号是"港口"的C逗号操作员, 这些评论意见 可能是恰当的:
一旦在一段时间,你会发现自己在 一种情况,C期望 单的表达,但是你们两个 你想要的东西说的话。最 公共(和实际上唯一的常见) 例是在一个
for
循环,具体地说 第一和第三控制 表达方式。如果有什么(例如)你 希望有一个循环在哪i
计数 从0
要10
在同一时间j
是倒计从10
要0
?
所以,你的本能,它的主要用在 for
循环是一个很好,我想。
其他提示
我偶尔使用它在条件(有时误称为“三元”)运算符,如果代码是很容易,打破它伸到一个真实的if / else改为:
my $blah = condition() ? do_this(), do_that() : do_the_other_thing();
它也可以在一些表达式,其中最后的结果是重要的,诸如在表达grep
使用,但在这种情况下,它只是作为如果使用分号相同的:
my @results = grep { setup(), condition() } @list;
不隶属于 StackOverflow