0
해시 해시를 역 참조하는 방법을 알고 내 서브 루틴에서 사용할 수 있습니다. 보시다시피, 내 서브 루틴 내 해시 해시 데이터 구조에 액세스하는 데 문제가 있습니다.참조 및 dereference 해시의 해시에 대한 해시에 대한 Perl
my $HoH_ref = \%HoH; # reference the hash of hashes
for(@sorted) {
print join("\t", $_, get_num($_, $HoH_ref))
}
sub get_num {
my ($foo) = shift;
my $HoH_ref = shift;
my %HoH = %{$HoH_ref}; # dereference the hash of hashes
my $variable = %HoH{$foo}{'name'};
# do stuff
return;
}
나는 %HoH{
근처에서 마지막 줄 %HoH{$protein}{'degree'}
에 두 번째에 구문 오류를 받고 있어요 및 해시의 해시 %HoH
에서 $protein
키를 인식하지 못합니다. 오류 메시지가 나타납니다 : Global symbol "$protein" requires explicit package name
. 덕분에
사용'$ 상반기 {$ foo는} { '이름'} '대신 %의 상반기'의 {$ foo는} {'이름 '}' . –
아, 그래. 감사합니다 – cooldood3490
http://perlmonks.org/?node=References+quick+reference – ysth