我正在编写一个使用 Perl 模块 Module.pm 的 Perl 脚本。
Module.pm 是这样的:
package Module;
use strict;
use warnings;
sub getInfo {
my $self = shift;
#my $var = shift;
if (!$self)
{
my $errmsg = "My ERROR MESSAGE";
return [1, $errmsg];
}
return [1, $self];
}1;
我这样称呼它:
use Module
my $result = Module::getInfo();
但是我在第 # 行不断收到一个 FATAL ERROR (at Module.pm) undefined object。这是为什么?
此外,如果我删除 getInfo() 子例程中的第一个注释并将另一个参数添加到我的调用行,那么我不会收到相同的错误。为什么?我以为我不必将 Module 对象作为参数发送来调用子例程?
这是一个使用 Perl 5.8.8 的 Linux 服务器。