Почему Perl считает, что существует несуществующий многоуровневый элемент хеширования?

Извините, это кажется таким простым вопросом, но я все еще не понимаю. Если у меня есть хэш, например:

my %md_hash = ();
$md_hash{'top'}{'primary'}{'secondary'} = 0;

Почему это правда?

if ($md_hash{'top'}{'foobar'}{'secondary'} == 0) {
    print "I'm true even though I'm not in that hash\n";
}

Нет Уровень "foobar" в хэше, поэтому разве это не должно приводить к ложному результату?

TIA

5
задан Zaid 25 August 2011 в 09:48
поделиться