是@{$list_ref}和@$list_ref相当于在Perl?
-
18-09-2019 - |
题
我是新来的Perl和我好奇是否 @{$list_ref}
和 @$list_ref
是完全相当。
他们似乎可以互换的,但是我很紧张,有一些微妙的事情,我可能会丢失。
解决方案
是的,他们是等效的。你需要矫当的表达是更多比一个简单的标变量, 例如,
push @{ $foo{$bar} } => "baz";
更多的细节,请参阅 使用参考文献 部分的 文件引用.标准Perl文件还包括几个教程使用的参考文件:
- 理解今天参考文献 (所提到的通过 霍布斯 在这个问题的意见)
- 操纵阵阵列在Perl
- Perl数据结构的食谱
其他提示
我总是发现它有助于记住,外括号并不是语法魔术,他们只是返回一个参考块。的块内的表达可以是任何一个返回参考:
$ perl -le 'sub foo {[qw/ apple orange banana /]} print ${print "Do something here."; foo()} [1]'
Do something here.
orange
不隶属于 StackOverflow