#!/usr/bin/perl
my $var_a;
$sub_a = "a";
$var_a = "a";
print ${var_."$sub_a"},"\n";
$sub_b = "b";
$var_b = "b";
print ${var_."$sub_b"},"\n";
__DATA__
b
为什么打印的是b,而不是a?这对我来说似乎是非常意外的行为。
我正在尝试使用具有替换名称的变量。在实践中,我不能不声明变量,因为赋值是在 forloop 中完成的,因此具有不同的词法范围。