(本文参考博客)
1. Perl 引用
定义变量的时候,在变量名前面加个\,就得到了这个变量的一个引用。
Perl 引用是一个标量类型可以指向变量、数组、哈希表(也叫关联数组)甚至子程序,可以应用在程序的任何地方。
#标量引用
my$scalar=42;
my$sref=\$scalar ;
# 数组引用
my@array= (1,2,3) ;
my$aref=\@array ;
#哈希引用
my%hash= ("name"=>"foo","age"=>42,"gender"=>"male") ;
my$href=\%hash ;
#子程序引用
sub handler {return 1}
$coderef = \&handler;
#句柄引用
$globref = \*STDOUT;
1.1 匿名数组
定义一个普通数组:
my @a = (1,2,3);
定义一个匿名数组引用:匿名数组引用-用 [ ] 定义
my $a = [1,2,3];
定义一个以匿名数组引用为元素的数组(实际是二维数组):匿名数组的元素仍然可以是匿名数组,所以我们可以用这种方法构造数组的数组,可以构造任意维度的数组。
@a = (
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
)
#其中:$a[1][2]表示第二行第三列元素6.
#也可以写成$a[1]->[2],不过很少有人这么写。还可以写成${$a[1]}[2],几乎没人这么