在Perl代码中最佳使用ifunless有哪些准则?在某些情况下,是否有充分的理由偏爱其中一种?

最佳答案

在Perl最佳实践中,建议不要使用unless。我个人认为这很荒谬。

只要有一个简单的条件我就使用unless,否则我将其写为if( ! ... )。我发现unless版本更具可读性,尤其是在用作后缀时:

do_something() unless $should_not_do_that;

我建议在情况变得更复杂时(例如当您将使用unlesselsif块时)避免使用else。 (幸运的是,或者不幸的是,根据您的观点,没有elsunless)

同样,任何时候条件是由其他 bool(boolean) 值组成的复杂表达式。例如,
unless( $foo and !$bar )

真是令人困惑,并且与等效的if相比没有任何优势。

关于perl - Perl条件语句中 ‘if’与 ‘unless’的用法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3048726/

10-13 03:57