您的位置:首页 > 其它

正确传递hash引用

2011-06-10 09:47 127 查看
大家应该知道哈希引用需要初始化,这我就不多说了。

我就主要分享下传入哈希引用有两种方式

#!/usr/bin/perl
use Data::Dumper;
sub foo {
my $h = shift;
$h->{hello} = 'World!';
}
my $a;
my $b = {};
foo($a); print Dumper($a);
foo($b); print Dumper($b);


或者

#!/usr/bin/perl

use Data::Dumper;

sub foo {
my $h = shift;
$h->{hello} = 'World!';
}

my $a;
my %b = ();
foo($a); print Dumper($a);
foo(/%b); print Dumper(/%b);


这里要注意几点:

1.第一个程序中的 my $b = {} 和 第二个程序中的 my %b = () 搞混淆,不要写成 my %b = {}。

2.函数传入引用时的写法,第一个是foo($b),第二个是foo(/%b)。

3.给哈希引用赋值时,用$hash->{$key}=$value 或者 ${$hash}{$key}=$value,推荐第一种方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: