我正在阅读此文档以了解 Perl 程序的生命周期。
在这样的命令行上运行 Perl 脚本时,运行时和编译时事件何时发生:
perl my_script.pl
perl script.pl
将编译script.pl
然后执行script.pl
。同样,require Module;
将编译Module.pm
然后执行Module.pm
。
如果编译器遇到一个BEGIN
块,它会在该块被编译后立即执行该块。请记住,这use
是一个由 a和可能 aBEGIN
组成的块。require
import
例如,
# script.pl
use Foo;
my $foo = Foo->new();
$foo->do();
做:
script.pl
use Foo;
require Foo;
Foo.pm
Foo.pm
import Foo;
my $foo = Foo->new();
$foo->do();
script.pl
my $foo = Foo->new();
$foo->do();