是Perl Do-While被认为是最佳实践(AKA专业编码标准)还是应该使用替代方案?

时间:2014-07-24 06:18:01

标签: 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;
}

1 个答案:

答案 0 :(得分:8)

使用while循环。

do BLOCK构造不算作循环,因此循环控制语句不适合它:

  
      
  • do BLOCK

         

    不是真正的功能。返回BLOCK指示的命令序列中最后一个命令的值。当由whileuntil循环修饰符修改时,在测试循环条件之前执行BLOCK一次。 (在其他语句中,循环修饰符首先测试条件。)

         

    do BLOCK 计为循环,因此循环控制语句nextlastredo不能用于离开或重启块。有关替代策略,请参阅perlsyn

  •