Chinaunix首页 | 论坛 | 博客
  • 博客访问: 60944
  • 博文数量: 9
  • 博客积分: 1604
  • 博客等级: 上尉
  • 技术积分: 110
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-10 10:08
文章分类

全部博文(9)

文章存档

2012年(1)

2011年(3)

2010年(4)

2009年(1)

我的朋友

分类:

2011-01-07 15:18:40

今天看了同事写的程序,先简单看几行代码
 
 

@array_log_login_record = &test(@{$hash_former{"display_info_center"}});

sub test
{
my @temp = @_;
...
foreach my$line(@temp)
   {
   ......
   }
}
@array_ospf = &ospf(\@{$hash_former{"display_ospf"}},\@{$hash_former{"display_isis"}},\@{$hash_former{"display_bgp"}},\@{$hash_former{"display_config_rip"}},\@{$hash_former{"display_rip"}});
sub ospf
{
my $array_in_use = $_[0];
.....
foreach my $line (@$array_in_use)
{
 ......
}
}

在这里先要说明几点

hash 和 array里只能放scalar

当hash的值要存array时,只能放array的reference(引用)

@{}就是array的引用

my $array_in_use = $_[0]
一般写成
my $array_in_use = shift;

my @temp = @_;   与   my $array_in_use = $_[0];  需要看情况使用

这里传递的函数传递的是reference的列表,

阅读(1243) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-09 11:57:52

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com