-
在windows_server_2008_r2_x64环境下搭建及配置oracle_11g_r2_rac+asm的引用调用指南
资源介绍
11.3 按引用调用
11.3.1 符号引用- typeglob
定义。typeglob 是变量的别名,即变量的另一个名字。它又称作是“符号引用”,类似于 UNIX
文件系统中的软链接。如要创建别名,可在实际变量的前面加上一个“*”符号。星号(“*”)适用
于任意类型的变量,包括标量、数组、散列、文件句柄和子例程等。别名是符号表中针对同名标识
符的另外一个名称。“typeglob”这个名字的来历是:它能以同样的名字表达不同的数据类型。例
如,*name 既可以表示 $name、@name,也可表示 %name、&name 等等。
别名机制常常出现在早期(Perl 4)的脚本中,负责按引用进行参数传递。虽然现在 Perl 提
供了改进的硬引用机制(详见第 13 章“这个功能需要用到引用吗?”),但用户仍可按照以往的
方式使用 typeglob 或别名机制。鉴于早期的 Perl 引入了大量含有 typeglob 机制的库,而且目
前在为程序构建符号表时也还需要用到它们(详见第 12 章),因此本章还将对它们进行详细介
绍。(如需了解如何在子例程中使用硬引用机制,请阅读“硬引用-指针”一节,完整内容请参
阅第 13 章)。
通过别名按引用传递。 用户可将别名(或 typeglob)传递到函数中,以便真正支持按引用传
递。这样便可修改全局变量的值,而不是修改 @_ 数组中的局部副本。如需将一个或多个数组传入
某个函数的话,用户无需把数组的全部内容一一传入子例程,而是可以传递该数组的别名或指针
(详见“硬引用-指针”一节)。如要为某个变量创建相应的别名,请在别名的名称前面加上一个星
号(*)字符,如下所示:
*alias = *variable ;
星号前缀代表所有的变量类型,包括子例程、文件句柄和格式。Typeglob 将自动产生具有相同
- 上一篇: perl高手必备的经典三部曲
- 下一篇: Javascript源码大全1.0