不确定我的标题有多清晰,但我是 perl 新手,没有其他方法可以真正描述它。我想做的是这样的:
if(condition){
my $VAR = " ";
}
然后稍后在其他地方使用 $VAR ......
if(! $USR){
my $USR = "$VAR";
}
有没有办法调用在其他地方引用的标量已被括号括起来?{}
提前致谢...
不确定我的标题有多清晰,但我是 perl 新手,没有其他方法可以真正描述它。我想做的是这样的:
if(condition){
my $VAR = " ";
}
然后稍后在其他地方使用 $VAR ......
if(! $USR){
my $USR = "$VAR";
}
有没有办法调用在其他地方引用的标量已被括号括起来?{}
提前致谢...
在作用域 {} 内声明的变量在作用域外被销毁。您需要先声明变量。始终使用严格和警告,它将为您节省大量时间。
use strict;
use warnings;
my $VAR;
my $USR;
if(condition){
$VAR = " ";
}
if(! $USR){
$USR = "$VAR";
}
在 perl 中, my 变量是词法范围的,因此可以在该范围内访问它们:
{
# start of lexical scope
my $VAR;
# end of lexical scope
}
在上面的代码$VAR
中只能看到左大括号和右大括号之间,而结束大括号之后$VAR
不再存在。