不幸的是,我没弄明白,为什么$alfa
仍然是空的:
use 5.014;
no strict 'refs';
my $berta = 5;
my $gamma = 'berta';
my $alfa = ${$gamma};
say "'$alfa'";
一定非常简单......我希望$alfa
在这里成为5
。我错过了什么?
答案 0 :(得分:6)
我认为问题在于代码只适用于全局变量,而不适用于使用my
声明的词法变量。 See the FAQ
our $berta = 5;
my $gamma = 'berta';
say $$gamma; # 5
显然,这在生产代码中不是一个好主意。