在lib/MyModule.pm
中:
package MyModule;
DEFER: {
print "foo";
}
1;
在script.pl
中:
use MyModule;
print "bar";
我希望能够输出:
bar
foo
也就是说,我想将DEFER:块中的代码执行推迟到运行时,最好在调用者中的代码执行完之后再执行。与BEGIN {}相反。目前,我使用END {},这与我想使用的BEGIN {}几乎相反,但是我想知道是否还有其他选择。要求之一是,调用者代码只想执行use MyModule
,而无需执行其他任何操作。