perlで、あらかじめ判定しておいた真偽値を変数に入れておいて
あとでそれをif文とかで参照するのってどうやるのが一般的なんだろう
my %hoge; $hoge{a} = 1; my $boola = exists $hoge{a}; # 真 my $boolb = exists $hoge{b}; # 偽 print("'$boola'\n"); # '1' print("'$boolb'\n"); # '' if($boola){ # ←なんかIDEが警告 Ambiguous condition を出してくる print "HELLO\n"; } if(!!$boola){ # ←警告は出ないけど、綺麗な手法では無いと思う print "WORLD\n"; }
真偽値が返る関数の戻り値って「1または0」じゃなくて「1また空文字列」になってるけど、そういうもんなのか? それとも環境依存?
戻り値の真偽値をif文で判定するときに警告が出ない政治的に正しい方法はなんだ?