以下是代码:
#!/usr/bin/perl -w
use strict;
use Data::Dumper;
my $var = {
Cars => {
cars_name => [
"GT500",
"Beetle",
"P1800"
]
},
Bikes => {
Bikes_name => [
"Pulsar",
"Discover",
"CBR"
]
}
};
#Traversing the hash of hash of array
print "$var\n";
foreach my $k1 (keys %{$var}) {
print "$k1\n";
print $var->$k1;
#foreach my $k2 (keys %{$var->$k1}) {
#print"$k2\n";
#}
}
每当我尝试打印cars_name和Bikes_name时,我都会收到一条错误消息,说明无法调用方法汽车上的Unblessed参考。我无法弄清楚我在做什么错误。好吧,通过我的理解print $var->$k1
;线创造一个概率。所以请任何人帮我解决这个问题。
由于
答案 0 :(得分:4)
print $var->$k1;
正在调用对象上的方法。您想要访问哈希:
print $var->{$k1};