伙计们,
据我了解,exists函数将检查哈希中是否存在密钥。所以对于下面提到的情况,key1还是key2没有定义。哈希引用$var没有键。
在这种情况下,调用keys(%{$var}) 时应返回 undef。
但是,它返回 1. 我在这里想念什么?
my $var;
if (exists $var->{key1}->{key2}) {
$var->{key1}->{key2} = 1;
}
my $keys = keys(%{$var});
print $keys; #prints 1 to output console