我刚开始学习 Perl 脚本语言,有一个问题。
在 Perl 中,让 continue
块与 while
和 do while
循环一起工作,但不能与 for
循环一起工作的逻辑原因是什么?
最佳答案
您可以在任何有意义的地方使用 continue
块:使用 while
、 until
和 foreach
循环,以及“基本”块——不属于另一个语句的块。请注意,对于列表迭代构造,您可以使用关键字 for
而不是 foreach
,当然在这种情况下您可以使用 continue
块。
正如其他人所说,for (;;)
循环已经有一个 continue
部分——你想先执行哪一个?continue
块也不能与 do { ... } while ...
一起使用,因为在语法上这是一个非常不同的东西( do
是一个以 BLOCK 作为参数的内置函数,而 while
部分是一个语句修饰符)。我想你可以对它们使用双 curl 结构(参数块内的基本块),如果你真的必须:
do {
{
...;
continue if $bad;
...;
}
continue {
...; # clean up
}
} while $more;
关于Perl 编程 : continue block,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5963286/