我总是想知道为什么我必须写
foreach my $x (@arr)
代替
foreach my $x @arr
这里括号的目的是什么?
最佳答案
我只能想到一个具体的原因。以下代码有效:
for ($foo) {
$_++
}
如果你要把它改成
for $foo {
$_++
}
那你真的会说
for $foo{$_++}
(即哈希查找)。 Perl 6 通过改变空格处理变量的方式来解决这个问题(你不能说
%foo <bar>
并让它与 %foo<bar>
具有相同的含义)。
关于perl - Perl 的 `foreach` 语句中括号的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3650000/