__FILE__ eq $0
「どう書く」の弾さんの投稿を読んでたら、たまに

if (__FILE__ eq $0){
# ...
}
ってコードが出てきて、どういう意味か分からずに気になっていたんだけど、「Programming Ruby」(なぜかRuby(笑))に答えが書いてあった。

 ユーザによって直接起動されたファイル内に存在する場合にだけコードを実行する時に、__FILE__定数と$0変数を組み合わせて使う事がよくあります。(中略)このようにすると、テストコードは、ライブラリのソースが直接起動された場合にだけ実行され、他のプログラム内で require されている場合は実行されません。

# ライブラリのコード
# ・・・
if __FILE__ == $0
# テスト...
end

「プログラミングRuby 第2版 言語編」p.292

だ、そうです。試してみたら、確かに Perl でもそういう動作だった。

というか、ググってみたらすぐに答えが見つかるしw。不覚・・・。
[PR]
by fkmn | 2007-12-09 23:55 | IT
<< 「罪と罰」亀山郁夫訳 「WEB+DB PRESS T... >>


とあるWebアプリケーションエンジニアの日記
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
カテゴリ
以前の記事
ブログパーツ
リンク
検索
タグ
最新のトラックバック
プログラミングが「出来る..
from とりあえず9JP?
Genographic ..
from ナンジャモンジャ
ジュセリーノ
from ありの出来事
くちこみブログ集(ライフ..
from くちこみブログ集(ライフ)(..
以降、丁寧語で行こう!
from エッセイ的な何か
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧

fkmnの最近読んだ本 フィードメーター - フッ君の日常 あわせて読みたい AX