我试图从一个有BEGIN
块的 Perl 模块初始化一个全局变量,但我无法让它工作。
这是 Perl 模块
Package A::B;
our $var;
BEGIN{
$var ||= "/some/default/path";
#create/access files/folders in $var
}
这是我的 CGI 脚本
use A::B;
$A::B::var = "/correct/path";
但#error
返回是因为 $var 不是正确的路径
BEGIN
在将正确路径分配给 之前,正在执行该块$var
。有没有办法解决这个问题而不必从BEGIN
块中删除代码?