Perl风格:学习优先级

  • 有一种说法是,你可以在任何你曾经使用标点符号版本的地方随意插入andor。它们有不同的优先级。你必须学习优先级。而且,偶尔使用几个括号并不会有什么坏处。

       print FH $data      || die "Can't write to FH: $!";  # NO
       print FH $data      or die "Can't write to FH: $!";  # YES
    
       $a = $b or $c;      # bug: this is wrong
       ($a = $b) or $c;    # really means this
       $a = $b || $c;      # better written this way
    
       @info = stat($file) || die;     # oops, scalar sense of stat!
       @info = stat($file) or die;     # better, now @info gets its due
    
  • 这里要小心括号的使用

       $a % 2 ? $a += 10 : $a += 2
    

    实际意思是这个

       (($a % 2) ? ($a += 10) : $a) += 2
    

    而不是这个

       ($a % 2) ? ($a += 10) : ($a += 2)
    

前往不要过度使用 `?:’
返回拥抱 && 和 || 用于控制和值
返回索引

版权所有 © 1998, Tom Christiansen 保留所有权利。

标签

反馈

这篇文章有问题吗?请在GitHub上打开一个问题或pull request来帮助我们。