use は perl5 以上でモジュールを読み込むのに使われ、スクリプト中のどこに記載してもコンパイル時に一度だけ必ずロードされる。
一般的には先頭に書かれることが多いが、最後に書かれていても、使われないサブルーチンの中でも、偽になって実行されない if 文の中でも、ループの中でも関係ない。子プロセスを fork しまくるようなプログラムではこちらを使ったほうがよい。
require は一般的にはモジュールではなくファイルを読み込むときに使われるが、モジュールにも使える。 コンパイル時ではなく実行時にロードされるので、偽になる if 文の中にあればロードはされない。 条件によってモジュールを読み込ませるかどうか切り替えたい場合にはこちらを使う。
以下のサイトの説明が詳しく、わかりやすい。
http://www.ndis.co.jp/blog/tech/2008/10/use-require.html
0 件のコメント:
コメントを投稿