Какая из этих подпрограмм не похожа на другую?
sub or1 {
my ($a,$b) = @_;
return $a || $b;
}
sub or2 {
my ($a,$b) = @_;
$a || $b;
}
sub or3 {
my ($a,$b) = @_;
return $a or $b;
}
sub or4 {
my ($a,$b) = @_;
$a or $b;
}
Я пришел в Perl 5 из C и Perl 4 и всегда использовал ||
, пока не увидел больше скриптов с использованием or
, и мне понравилось то, как он выглядел. Но, как видно из вышеприведенной викторины, это не без его ловушек для неосторожного. Для людей, которые используют обе конструкции или используют много or
, какие эмпирические правила вы используете, чтобы решить, какую конструкцию использовать, и убедитесь, что код выполняет то, что вы думаете, что он делает?