我希望能够说:
use this;
并且相当于:
use 5.010;
那么我如何为模块import
编写this
函数?
package this;
sub import {
my $caller = caller;
???
}
答案 0 :(得分:3)
您需要的是导入功能编译指示:
package myfeature;
require feature;
sub import {
feature->import(':5.10');
}
1;
有关详情,请参阅功能编译指示文档:http://perldoc.perl.org/feature.html
答案 1 :(得分:1)
您可以使用Modern :: Perl模块,它会自动启用5.10.x
答案 2 :(得分:0)
我明白你为什么要这样做,但这不是一个好主意。目前,use VERSION
验证您至少运行了该版本的perl,并启用了指定版本中引入的功能。将来它还会实际修改某些功能的操作,以匹配它们在该版本中的工作方式。您真的希望为每个文件指定它,而不是为整个代码库指定它,或者当您想要更改它时,您会遇到麻烦。