|
发表于 2004-1-9 06:23:48
|
显示全部楼层
#!/usr/bin/perl
%xxx = ("name" => "panjie", "sex" => "male");
push(@result1, \%xxx);
$name = $result1[0]->{"name"};
# 也可以用$name = $result1[0]{"name"};
print "$name";
这样就行了,看看关于反引用(dereferencing)相关的内容吧
$result1[0]的值就是保存%xxx的数组的内存地址,这里是散列的引用
如果是$name = $$result1[0]->{"name"} 就是数组的引用了,然后再嵌入一个散列的引用
如果要用你的反引用表示方法的话,可以用
#!/usr/bin/perl
%xxx = ("name" => "panjie", "sex" => "male");
push(@result1, \%xxx);
$result2 = \@result1;
$name = $$result2[0]{"name"};
print "$name"; |
|