【发布时间】:2012-12-22 23:45:30
【问题描述】:
我编写了一个 perl 模块(比如 foo),带有一个主要子例程(比如 f()),我想以两种方式使用它:
- 导入模块
foo,然后从脚本导入模块foo调用子f(...)。 - 只需导入模块
foo并获取模块foo以调用子f(@ARGV)或一些适当的变体。
我可以制作一个具有这两个选项的模块吗,
或
我是否应该制作一个包装器模块,比如foo_default.pm,它将use foo 然后调用foo::f(@ARGV)?
【问题讨论】:
-
您能否发布一些您尝试过一些适当的变体的代码?因为您可以像 sputnick 向您展示的那样导出函数。这将适用于带参数的函数调用,只需使用
my $args = @_;作为函数f()的第一行。
标签: perl wrapper perl-module overloading