解决方法
这声明了一个标量变量$var,其中包含对匿名哈希的引用.
引用(有点像指针)总是标量,无论它们引用什么.
你也可以这样做:
%hash = ( key => value,anotherkey => anothervalue ); #parentheses,not curlies! $var = \%hash;
在这种情况下,$var引用的哈希不再是匿名的,但结果是相同的.
您可以通过使用 – >取消引用$var来提取引用哈希的各个元素.在应用哈希下标{…}语法之前:
$var->{key} # == value,same as $hash{key} in second case
或者你可以通过%{$var}检索整个事情(并恢复%哈希).
查看更多详情here.