推迟执行Perl代码块

时间:2019-02-22 17:33:50

标签: perl

lib/MyModule.pm中:

package MyModule;
DEFER: {
    print "foo";
}
1;

script.pl中:

use MyModule;
print "bar";

我希望能够输出:

bar
foo

也就是说,我想将DEFER:块中的代码执行推迟到运行时,最好在调用者中的代码执行完之后再执行。与BEGIN {}相反。目前,我使用END {},这与我想使用的BEGIN {}几乎相反,但是我想知道是否还有其他选择。要求之一是,调用者代码只想执行use MyModule,而无需执行其他任何操作。

0 个答案:

没有答案