__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