标签: perl
在Perl编程时是否使用Do-While被认为是最佳实践(AKA专业编码标准)?
my $continue = 1; do { # When time to break the loop. $continue = 0; } while ($continue);
或者应该使用替代方案,例如......
MYLOOP: while(1){ # When time to break the loop. last MYLOOP; }
答案 0 :(得分:8)
使用while循环。
while
do BLOCK构造不算作循环,因此循环控制语句不适合它:
do BLOCK
do BLOCK 不是真正的功能。返回BLOCK指示的命令序列中最后一个命令的值。当由while或until循环修饰符修改时,在测试循环条件之前执行BLOCK一次。 (在其他语句中,循环修饰符首先测试条件。) do BLOCK 不计为循环,因此循环控制语句next,last或redo不能用于离开或重启块。有关替代策略,请参阅perlsyn。
不是真正的功能。返回BLOCK指示的命令序列中最后一个命令的值。当由while或until循环修饰符修改时,在测试循环条件之前执行BLOCK一次。 (在其他语句中,循环修饰符首先测试条件。)
BLOCK
until
do BLOCK 不计为循环,因此循环控制语句next,last或redo不能用于离开或重启块。有关替代策略,请参阅perlsyn。
next
last
redo
perlsyn