寺西です。 (2011/06/23 14:09), Shigekazu Aoyagi wrote: > プロトタイプ宣言ですから、generate_uri()を呼び出すときに引数を間違えた > 場合にデバッグを容易にするというメリットはあります。現状のソースに > 呼び出し間違いがあるわけではありませんから、将来の変更時における > 予防的措置という意味です。
プロトタイプ宣言はそういう意味ですよね。 ただ、Perl の言語仕様ゆえ C 言語ほどその効果が高くはないのです。 # 引数の個数の概念がちょっと違うから 今回の場合は可変引数なので、(;$$) と (@) の違いは、引数が最大2個 という情報が得られる以外はどちらも変わりません。 例えば、2個の引数を指定しないといけないところを 1個で指定して いたり、1個の引数を指定しないといけないところを 2個で指定して いるケースでは無力です。 それでも引数が最大2個を明記するが重要と判断するか、その程度なら あまり意味がないと判断するかは難しいところです。 今回は可変引数の例でしたが、いずれにしろプロトタイプ宣言をあまり 過信しないで、引数の数はきちんと確認するという方針でやることに どこかの時点でなったかと思います。 # HACKING-ja に書くべき内容ですね。 > と書きましたが、これも「動いているソースに手を入れる」ことですので > 今強いて行わなければならないと言えばその通りです。ですので、こちらは > 取り下げさせていただきます。 まぁ、そう言わずに。 直すかどうかは分かりませんが、問題点を指摘していただければ、 いろいろと検討はできるかと思います。 以上、よろしくお願いします。 -- ===================================================================== 寺西 忠勝(TADAMASA TERANISHI) yw3t-t...@asahi-net.or.jp http://www.asahi-net.or.jp/~yw3t-trns/index.htm Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E _______________________________________________ Namazu-users-ja mailing list Namazu-users-ja@namazu.org http://www.namazu.org/cgi-bin/mailman/listinfo/namazu-users-ja