4
A
回答
8
这意味着解引用和阵列参考。
您将看到引用数组的内容。
需要注意的是,你可以在你的情况下,使用简单
@$x
。
当你在你的数据结构多层次就像这个例子所需要的{ }
字符:
@{ $foo->{first_level}->{second_level} }
或
@{ $foo->[$first_level]->[$second_level] }
这工作也与他人sigils:
%{ } # HASH
$ # SCALAR
8
这是一个解除引用。 @{ $ref }
是参考@array
是阵列,这意味着你会使用@{ $ref }
无论你使用@array
。
>perl -E"@array = qw(a b c); say $_ for @array;"
a
b
c
>perl -E"$ref = [qw(a b c)]; say $_ for @{ $ref };"
a
b
c
明确时可以省略卷毛。
>perl -E"$ref = [qw(a b c)]; say $_ for @$ref;"
a
b
c
4
如果$x
是一个数组的引用,如
@a = (1,2,3);
$x = \@a
与
@$x
然后或@{$x}
,你回来@a
。
1
取决于上下文和接下来的内容。在标量上下文:
$y = @{$x};
它将到$x
是一个参考阵列中的返回元件的计数。
在列表上下文:
@y = @{$x};
它会返回的数组的元素。
如果随后[LIST]
:
@{$x}[1,42]
它产生一个阵列片,该阵列在指定的元素列表,其$x
是一个参考。
如果随后{LIST}
:
@{$x}{ 'foo', 'bar' }
它产生一个散列切片,在散列指定键的值的列表,其$x
是一个参考。
注意,{}
周围$x
没有关系用于构建一个匿名哈希{}
,他们是一个代码块的分隔符。如果它们是一个简单的标量变量,它们可以忽略;如果它们没有被省略,它们可以包含一个任意表达式,甚至包含多个在最后返回一个引用的语句。
相关问题
- 1. Perl开关语句
- 2. Perl脚本给出了Perl v5.20的语法错误,但与v5.10没有关系
- 3. 的Perl +在语法
- 4. Perl语法sigil
- 5. $ {HTTPD -...} Perl语法
- 6. 如何索引的所有独特的语料用perl
- 7. 的Perl:语法使用变量在引号
- 8. 仅禁用某些关键字的Perl语法突出显示
- 9. Perl的语法错误
- 10. Perl的语法不突出
- 11. perl的+ @ARGV +打印语法
- 12. Clojure的宏:引用和语法引用
- 13. Perl中,引用
- 14. Perl:语法错误“)[”。 array slicing
- 15. Perl子参考语法
- 16. Perl:使用引用有其他散列
- 17. 多行perl使用标准输入法的多行perl的heredoc语法
- 18. 在代码之外引用变量的与语言无关的语法
- 19. Perl方法和通过引用
- 20. 无法打印数组引用perl
- 21. 有关Mysql的语法问题
- 22. 有关dos命令的帮助语法
- 23. FLEX:有关MXML语法的问题
- 24. 有关结构的golang语法问题
- 25. 引用语法错误?
- 26. Perl类中没有代码引用
- 27. 引用Perl哈希
- 28. 我不明白这Perl语法,任何人有任何想法?
- 29. 关于引用的奇怪的perl行为
- 30. Perl的名单引用
for perlreftut!学习创建和使用参考文献的最佳文档! – 2013-03-11 18:59:13