我想将所有子项公开到我的命名空间中,而不必一次列出它们:
@EXPORT = qw( firstsub secondsub third sub etc );
使用完全限定的名称将需要对现有代码进行大量更改,因此我宁愿不这样做。
有@EXPORT_ALL吗?
我认为文档说这是个坏主意,但无论如何我还是想这样做,或者至少知道如何做。
回答Jon的原因:现在,为了进行快速重构,我想将一堆子程序转移到它们自己的程序包中,而麻烦和代码更改到现有脚本的程度最少(这些子程序当前被使用并且经常重复)。
而且,大多数情况下,我只是好奇。
(因为似乎Exporter可能还具有该功能作为标准功能,但基于到目前为止的答案却有些令人吃惊,但事实并非如此)
最佳答案
根本不执行任何导出操作,也不要在库中声明程序包名称。只需使用require
加载文件,一切都将在当前包中。十分简单。
关于perl - 如何导出Perl程序包中的所有子程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/732133/