ローカルサブとrequireサブで、同名サブルーチンは、どちらが優先か?
結論から言うとrequireサブが優先されます。
追記:
package宣言なしのrequireサブを読み込むと、ローカルサブと同じくmainパッケージとなり、単に先に宣言されたサブの方が優先されただけでした。
テストプロ(test.pl)
use strict;
require 'sub.pl';
&aaa();
sub aaa {
print "---ローカルサブ---\n";
}
requireサブ(sub.pl)
use strict;
sub aaa {
print "---requireサブ---\n";
}
1;
実行結果
$ test.pl ---requireサブ---