Perl中是否有可用于引用模块名称的别名?

时间:2011-09-28 08:16:17

标签: perl

我有多个Perl模块。包名称似乎很大

每次我从这些模块访问函数时,我需要提供类似这样的东西

&PackageName::Functionname()

Perl中是否提供了一个快捷方式或别名,它可以引用名称较大的包

由于

KARTHIK

2 个答案:

答案 0 :(得分:9)

使用Package::Alias,您可以使用Foo::Bar::Bazbaz之类的长包名称别名:

use Package::Alias 'baz' => 'Foo::Bar::Baz';

baz::quux;  # Invokes Foo::Bar::Baz::quux;

答案 1 :(得分:5)

您可以在没有&的情况下调用该函数:

PackageName::Functionname();

还有导出机制将函数从模块导出到默认命名空间:

use PackageName 'Functionname';

Functionname();

如需进一步说明如何使用use,请参阅http://perldoc.perl.org/functions/use.html

如何在编写自己的模块时导出函数,请参阅http://perldoc.perl.org/Exporter.html