为什么下面给出了以下输出?$a1 定义...
package A1;
use Hash::Merge;
use Data::Dumper;
sub new
{
my $class = shift;
my $self =
{
length => 2,
};
return bless $self, $class;
}
1;
my $a1 = A1->new();
print("a1 = " . ref($a1) . "\n");
my %a = {'1' => $a1};
my $a3 = \%a;
print( Dumper($a3));
Run Code Online (Sandbox Code Playgroud)
输出:
a1 = A1
$VAR1 = {
'HASH(0x247c568)' => undef
};
Run Code Online (Sandbox Code Playgroud)
我原以为该值是“A1(0x...)”,而不仅仅是未定义的...