Kir*_*gle 3 arrays perl reference
我正在思考是否可以在Perl中的一行中创建数组引用的问题.有点像你定义一个数组.我通常会做以下事情:
#!/usr/bin/perl
# your code goes here
use warnings;
use strict;
use Data::Dumper;
my @array = qw(test if this works);
my $arrayref = \@array;
print Dumper($arrayref);
Run Code Online (Sandbox Code Playgroud)
我的想法是你应该能够做到的:
my $arrayref = \(qw(test if this works);
Run Code Online (Sandbox Code Playgroud)
然而,这不符合我的预期.这甚至可能吗?
你可以通过使用'square-bracketed anonymous array constructor'来做到这一点.它将创建一个数组引用'literal'
my $arrayref = [ qw(test if this works) ];
Run Code Online (Sandbox Code Playgroud)
或列出每个成员:
my $arrayref = [ 'test', 'if', 'this', 'works' ];
Run Code Online (Sandbox Code Playgroud)
您可以使用Data Dumper验证两个结果:
$VAR1 = [
'test',
'if',
'this',
'works'
];
Run Code Online (Sandbox Code Playgroud)