这里是Perl新手。
map显示了两个使用表单:
map BLOCK LISTmap EXPR, LIST我不完全理解两者之间的语义区别。我什么时候应该选择一种而另一种?EXPR表单是否将我限制为一个表达式,而BLOCK表单允许我拥有多个语句(更复杂的逻辑)?
发布于 2014-04-28 04:15:51
除了语法之外,惟一的区别是curlie引入的作用域。例如,
>perl -E"use strict; map my $x = $_, 1,2,3,4; say $x"
>perl -E"use strict; map { my $x = $_ } 1,2,3,4; say $x"
Global symbol "$x" requires explicit package name at -e line 1.
Execution of -e aborted due to compilation errors.https://stackoverflow.com/questions/23332271
复制相似问题