【发布时间】:2013-07-05 01:40:27
【问题描述】:
关于given 块之外的when 语句的文档似乎很少。据说when 可以在设置“主题”时使用,但究竟什么时候考虑设置了主题?考虑以下情况:
for (@arr) {
when { }
}
似乎这是默认的基本情况,但我什至无法在我的 perl 5.14.2 上使用它 - 原来这只是另一个 bash 引用问题。$ perl -Mfeature=switch -e 'foreach (qw(a b c)) { when (/a/) {print 'boom'} }' 什么也没打印。我做错了什么?
for my $elem (@arr) {
when { }
}
这行得通吗? $elem 会自动成为when 使用的主题吗?
for (@arr) {
$_ = some_expression($_);
when { }
}
这行得通吗?可以在循环内设置主题吗?
另外,当上面的每个代码段使用foreach而不是for时,有什么区别吗?
基本上,我对主题的主题非常不清楚,所以请赐教。
【问题讨论】: