我可以直接访问列表中的元素:
$foo = (qw(a b c))[2]; # $foo = "c"
我可以给哈希分配一个列表:
%h = (a=>0, b=>1, c=>2);
$foo = $h{c}; # $foo = 2
那么,为什么我不能直接将列表视为哈希表呢?
$foo = (a=>0, b=>1, c=>2){c}; # Syntax error
我找到的最接近的方法是创建一个哈希引用:
$foo = {a=>0, b=>1, c=>2}->{c};
如何使用正确的语法将列表作为哈希进行访问?为什么不能这样做?