構文 |
|
use モジュール名 バージョン インポート・リスト use モジュール名 バージョン use モジュール名 インポート・リスト use モジュール名 use バージョン |
返り値 |
|
なし |
説明
- 指定したPerlモジュールを読み込みます。
- バージョンが指定された場合,モジュールのバージョンと比較して,モジュールのバージョンが古い場合エラーになります。モジュールの指定がない場合にバージョンを指定すると,実行しているPerlのバージョンと指定したバージョンを比較します。
- インポート・リストが指定された場合,指定されたものをインポート(import)します。省略された場合はモジュール側で決めているデフォルトのものをimportします。importしたくない場合は空リストを指定します。
- useのほかにrequireでもモジュールを読み込むことができます。requireとuseの主な違いとしては以下があげられます。
表 requireとuseの主な違いrequire use 実行タイミング require実行時 スクリプト起動時 Exporterによる
自動インポート不可能 可能
- モジュールを読み込む場合,通常はuseを使います。
- useの場合,モジュールを使う/使わないに限らず起動時に読み込んでしまうので,必要な時だけモジュールを読み込みたい場合にrequireを使う場合があります。
使用例
#!/usr/bin/perl
use strict;
use warnings;
use Cwd;
print getcwd(), "\n";
#!/usr/bin/perl
use strict;
use warnings;
use Cwd (); # importしない
print getcwd(), "\n";
# getcwdがimportされていないのでエラーになる
print Cwd::getcwd(), "\n";
# 明示的にCwd::を指定すれば使用可能
#!/usr/bin/perl
use strict;
use warnings;
use Time::HiRes;
# usleepをimportしないので下のusleepでエラーになる
use Time::HiRes qw/usleep/;
# usleepをimportする
usleep(500000); # 0.5秒sleep
#!/usr/bin/perl
use strict;
use warnings;
use Cwd 3.0;
# Cwdモジュールのバージョンが3.0よりも古い場合はエラー
print getcwd(), "\n";