2008年12月14日のブックマーク (1件)

  • Perlにおける真偽 : blog.nomadscafe.jp

    Perlにおける真偽 おいぬま日報(不定期)さんの記事で、 でもこれは下記のように書くことが出来ます。 sub func { my %args = @_; my $hoge = $args{hoge} || 'fuga'; # なんか処理 } なんとこれを知っているだけで3行もコードが節約出来るんです。 とあって、短く書けてエレガントです。 これだけでも97%ぐらいはかまわないのですが、使い続けるとはまりどころがあります。 &func(hoge=>0); &func(hoge=>""); として、$hogeに0や""を入れたい場合がそれ。 なぜなら、0や""がブール値コンテキストにおいて、偽となるからです。 Perlにおける真偽の規則は、らくだから引用ですが、 1. ""と"0"を除き、すべての文字列は真である 2. 0を除き、すべての数値は真である 3. すべてのリファレンスは真である

    asannou
    asannou 2008/12/14