Perl中的标量 - 可以在整个脚本中导出它们

时间:2014-08-29 17:54:47

标签: linux perl scalar curly-brackets

不确定我的标题是多么清晰,但我是perl的新手并没有别的办法真正描述它。 我想做的是这样的事情:

if(condition){
     my $VAR = " ";
}

然后在其他地方使用$ VAR ......

if(! $USR){
     my $USR = "$VAR";
}

有没有办法调用在其他地方被引用括号的标量?    {}

提前致谢...

2 个答案:

答案 0 :(得分:3)

在范围{}内声明的变量在范围之外被销毁。 你需要在之前声明变量。始终使用严格和警告它将为您节省大量时间。

use strict;
use warnings; 

my $VAR;
my $USR;
if(condition){
     $VAR = " ";
}

if(! $USR){
    $USR = "$VAR";
}

答案 1 :(得分:0)

在perl中,我的变量是词法范围的,因此可以在该范围内访问它们:

{ 
# start of lexical scope

my $VAR;

# end of lexical scope
}

在上面的代码中$VAR只能在开括号和结束括号之间看到,并且在结束括号$VAR之后不再存在。