Chinaunix首页 | 论坛 | 博客
  • 博客访问: 208538
  • 博文数量: 39
  • 博客积分: 1057
  • 博客等级: 准尉
  • 技术积分: 926
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-27 20:13
文章分类

全部博文(39)

文章存档

2012年(24)

2011年(15)

分类: Python/Ruby

2011-07-06 19:53:01

本文是在 Perl 5 下写作的。引用是Perl支持的一种功能,引用的本质和C的指针类似,都是通过寻址的方式使用各种“量”或者函数,下面回顾一下Perl中引用的使用,很基本和实用的东西,希望刚接触perl的朋友能最快的学会使用引用这种方法。

引用使用‘\’实现,下面以具体简单的例子说明使用方法。

1、标量的引用及使用方法

  1. my $lsb = "lsb_release -a | grep -i fedora";
  2. my $lsb_ref = \$lsb;    #引用本身存放的是一个地址,类型是标量,故以‘$’开头,这里$lsb_ref就是标量$lsb的引用
  3. system("$$val_ref"); #通过‘$$’这样的形式使用该引用指向的标量
2、数组的引用及使用方法

  1. my @small = ('one','two','three'); #数组的定义方式
  2. my $big_ref = ['four','five','six'] #这里是一个匿名数组(无名),$big_ref就是这个匿名数组的引用
  3. my $samll_ref = \@samll;                 #$small_ref为数组small的引用
  4. print "$@small_ref[1]\n";                #这里给出两种数组引用的使用方式
  5. print "$@big_ref->[0]\n";               #‘->’也是使用数组引用的方式
3、哈希(散列)的引用和使用方法
  1. my %hash = ('key1' => 'value1',
  2.                    'key2' => 'value2'
  3.                   );
  4. my $hash_ref = \%hash;

  5. print $hash_ref->{key2};            #hash引用的使用方式
  6. print "$$hash_ref{key1}\n";
4、函数的引用和使用方法
  1. sub print_msg{
  2.         my ($msg) = @_;
  3.         print "MSG:$msg\n";
  4.         return();
  5. }

  6. my $print_ref = \&print_msg;

  7. &$print_ref('iugame is ok!');
学问有限,希望对刚接触Perl引用的朋友有所用...
阅读(2113) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~