将参数传递给另一个模块perl的子程序

时间:2014-11-10 04:19:46

标签: perl

我正在尝试做这样的事情:有:

package Module;
use base 'Exporter';
our @EXPORT = qw(print);

sub print {
    my $nr = shift;
    print "$nr\n";
    if ($nr >= 5) {
        print "greater\n";
    } else {
        print "smaller\n";
    }
}

1;

main.pl

use My::Module;
my $number = 7;
Module->print($number);

问题在于,当我运行它时,我得到了这个:

Module smaller

任何人都可以帮我弄清楚我做错了吗?

1 个答案:

答案 0 :(得分:1)

当使用箭头运算符时,左侧的东西被隐式传递为第一个参数。您想使用Module::print($number);