1. ホーム
  2. perl

Perl スクリプトに他のファイルの関数をインクルードするにはどうしたらいいですか?

2023-11-07 06:57:33

質問

これは本当に簡単な質問のようですが、どういうわけか私のGoogle-Fuは私を失敗させました。

Perlで他のファイルから関数をインクルードするためのシンタックスは何ですか? 私は、Cのようなものを探しています。 #include "blah.h"

Perl モジュールを使用するオプションを見ましたが、それは私の現在のコードの重要でない書き換えを必要とするように思われます。

どのように解決するのですか?

モジュールを使用する。 チェックアウト perldoc perlmod エキスポーター .

ファイルFoo.pmにおいて

package Foo;
use strict;
use warnings;
use Exporter;

our @ISA= qw( Exporter );

# these CAN be exported.
our @EXPORT_OK = qw( export_me export_me_too );

# these are exported by default.
our @EXPORT = qw( export_me );

sub export_me {
    # stuff
}

sub export_me_too {
    # stuff
}

1;

メインプログラムの中で

use strict;
use warnings;

use Foo;  # import default list of items.

export_me( 1 );

両方の機能を取得することも

use strict;
use warnings;

use Foo qw( export_me export_me_too );  # import listed items

export_me( 1 );
export_me_too( 1 );

パッケージ変数をインポートすることもできますが、この方法は強く推奨されません。