Perl语言中的“指针”用法解析

本文和大家重点讨论一下Perl语言中的“指针”的概念,它主要用来传递复杂的结构,例如多维数组。希望通过本文的介绍大家对Perl语言中“指针”的概念有明确的认识。

Perl语言中的“指针”

本文作者介绍了解决在调用函数时,如果参数值和返回值比较多,而且非常复杂的时候的方法。一种是使用引用调用,这样可以传递象数组、哈希数组一类的数据,另外一种就是作者着重介绍的“指针”,主要用来传递复杂的结构,例如多维数组。

在C语言中,指针的使用给我们带来了很大的方便,但是在Perl语言中没有直接提供这样的数据类型,在某些情况下就存在一些很不方便的地方。

例如:在调用函数时,如果参数值和返回值比较多,而且非常复杂的时候,仅仅是参数栈或返回值栈是不够用的。这时候,有两种解决方法,一种是使用引用调用,这样可以传递象数组、哈希数组一类的数据,另外一种就是我要着重介绍的“指针”,主要用来传递复杂的结构,例如多维数组。下面,我用多维数组为例:

多维数组指针的创建

Perl语言中多维数组指针的创建非常简单,具体语句如下:
my$multi_array=[];

这时,$multi-array就是一个指针,它的内容是undefined.下一步我们要给它赋值,语句如下:
@{$multi_array}=((a,...,z),(1,...,10),($a,...,$xx));

这时,$multi-array就成了一个指向二维数组的指针,当然,如果必要的话,你可以定义更多的维数。如何使用这个二维数组的元素呢?

$multi_array->[0][1]#数组第一维,第二个元素

相关推荐