2011-09-28 42 views

回答

5

你ç的通话功能,而不&

PackageName::Functionname(); 

还有就是出口机制,出口函数从模块到您的默认命名空间:

use PackageName 'Functionname'; 

Functionname(); 

如需进一步解释相关如何使用use看到http://perldoc.perl.org/functions/use.html

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

+2

,或者你可以指定哪些功能在默认情况下 –

+12

出口可以_and should_调用该函数没有'&'。函数调用的'&'前缀具有非明显的副作用,这通常不会成为你想要的。 –

+0

如果我调用像这样的'PackageName :: Fucntion(“param1”,“Param2”)''我得到一个编译错误。如果我调用'&PackageName :: Fucntion(“param1”,“Param2”)'完全正常。我究竟做错了什么? – KK99

8

随着Package::Alias你可以别名长包名称,如Foo::Bar::Bazbaz

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

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

不幸的是我不能使用package :: alias,因为我将使用RATLPERL – KK99

相关问题