in reply to Hash table with no fully distinct keys
I don't believe you want to use defined that way. Here is a simple demonstration why:if (defined $referenceTable{key} eq $systemKey) {
use strict; use warnings; my %referenceTable = (me=>5, you=>2); my $systemKey = 5; for my $key qw(me she) { if (defined $referenceTable{$key} eq $systemKey) { print "$key if\n"; } else { print "$key else\n"; } } __END__ me else she else
You probably would have expected to see "me if".
You should use strict and warnings to catch typos such as $referenceTable{key}, which probably should be $referenceTable{$key}.
|
|---|