perl 引用
一个'引用'就是一个指向一个完整列表或完整哈希(或指向其他的东西,比如函数)的标量值
先上代码:
#!/usr/bin/perl
my @p=(0,1,2,3,4,5);
my $pp=\@p;
my $t=1;
my $tt=\$t;
my %h=(
'name'=>'Tom',
'age'=>'3',
);
my $hh=\%h
sub test1()
{
print "pp=$pp\n";
print "tt=$tt\n";
print "hh=$hh\n";
}
sub test2()
{
print "pp=".$pp->[3]."\n";
print "tt=".$$tt."\n";
print "hh=".$hh->{'name'}."\n";
}
print "test1 out:\n";
&test1;
print "test2 out:\n";
&test2;
运行结果:
$pp 是指向数组的引用
$tt 是指向标量的引用
$hh 是指向哈希的引用
这有点像C里面的指针。用‘\’来取引用;
test2() 函数还可以写成这个样子:
sub test2()
{
print "pp=".$$pp[3]."\n";
print "tt=".$$tt."\n";
print "hh=".$$hh{'name'}."\n";
}
运行结果是一样的;perl里面的引用用'$'来解引用;