【发布时间】:2011-05-19 04:55:10
【问题描述】:
在 Perl 中,我使用类似于以下的循环创建了一个哈希值
my %HoH
for my $i (1..10) {
$HoH{$a}{$b} = $i;
}
$a 和 $b 是在填充 HoH 时确实具有某些值的变量。创建 HoH 后,如何检查特定对 ($c, $d) 是否存在于 HoH 中?以下不起作用
if (defined $HoH{$c}{$d}) {...}
因为如果 $c 在 HoH 中已经不存在,它将被创建为没有值的键。
【问题讨论】:
-
不完全:如果散列不包含
$c的值,它将被创建为对(新的、匿名的)散列的引用,因为这就是它的使用方式。这称为“自动复活”。