关于 perl 引用优先级的困惑

Confusion about perl reference precedence

我只想问一下这两者有什么区别?

${$rarray[1]} 对比 ${$rarray}[1]

我明白${$rarray}[1]但我真的无法理解我的生活${$rarray[1]}??

${$rarray[1]} 是数组 $rarray[1] 的第二个元素,被 ${ ... }.

解引用为标量

${$rarray}[1] 是数组 @$rarray.

中的第二个元素

如果加一些空格会更容易看:

${   $rarray[1]   }        # @rarray is defined somewhere
${   $rarray      }[1]     # $rarray is an array reference

作为一种形象化的方式,想象一下这个

my $aref = $rarray[1];    # copy array ref
print ${ $aref };         # dereference $aref