を示しています。Perlのモジュールは次のように、モジュールをインポートしながら、私が何かで混乱しました
use POSIX;
&
use POSIX();
&
use POSIX qw(WNOHANG);
これらuse
の違いは何ですか?
を示しています。Perlのモジュールは次のように、モジュールをインポートしながら、私が何かで混乱しました
use POSIX;
&
use POSIX();
&
use POSIX qw(WNOHANG);
これらuse
の違いは何ですか?
ほとんどのモジュールでは、Exporter
モジュールを使用して、呼び出し先の名前空間にある関数/変数/定数を公開しています。
use POSIX;
これは、POSIXの@EXPORT
からのすべてのシンボルを呼び出しモジュールの名前空間にインポートするだけです。
use POSIX();
これは呼び出し元の名前空間に任意のシンボルをインポートしません。しかしこれだけ呼び出すモジュールの名前空間にシンボルWNOHANG
をインポートします
use POSIX(WNOHANG)
など、あなたがPOSIX::strftime(...)
のような関数を呼び出すことができることを意味しており、モジュールをロードしません。
@EXPORT
と@EXPORT_OK
の配列に精通していない場合は、間違いなくExporterのドキュメントを実行する必要があります。 Exporter
を使用することは、あるモジュールからモジュールの名前空間(呼び出し側の名前空間)にシンボルをエクスポートするPerlの標準的な方法です。 POSIX
も同様です。
オブジェクト指向のインターフェイスで設計されたモジュールでは、一般的にシンボルをインポートする必要はありません。