Perl 如何要求文件并使用其子例程

Perl 如何要求文件并使用其子例程,perl,Perl,当子例程必须获取变量时,如何在所需文件中使用子例程: file.pl: ... sub func{ my ($var) = @_; .. } main.pl: .. require "file.pl"; func(1); .. 这对我不起作用,我得到了一个错误,显示未定义的子例程&main::func。Perl告诉您不存在main::func(main是默认包),所以 您需要在函数前面加上限定的包名 require "file.pl"; Naming::func(1); file

当子例程必须获取变量时,如何在所需文件中使用子例程:

file.pl:

...
sub func{
  my ($var) = @_;
  ..

}
main.pl:

..
require "file.pl";
func(1);
..

这对我不起作用,我得到了一个错误,显示
未定义的子例程&main::func

Perl告诉您不存在
main::func
main
是默认包),所以 您需要在函数前面加上限定的包名

require "file.pl";
Naming::func(1);

file.pl
应以真值结尾,即
1我只能看到你发布的内容。好的,您是否检查了所需文件的路径?
file.pl
中是否有任何包?file.pl使用包,但其中没有定义包。在使用
main.pl
的其他包中,是否也需要先复制/粘贴
package
func()
上面的
file.pl
行?