`
blue_halo
  • 浏览: 86095 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

perl中的引用类型

    博客分类:
  • ruby
阅读更多

概括:

可以把perl中的引用联想成c++或者java中的引用类型,可以简单的认为就是一个指针(可以想象成句柄,不是简单通过访问地址取得值),所以引用是一个标量。

 

一、取得标量的引用

$a=1;  #a代表$a的首地址,$可以想象长c中的*,$a是这个地址里的值。

$b=\$a; (可以把\想象成&)

# b 是 $a地址的地址,$b是$a的地址,$$b是$a的值。

 

当然也可以取得常量的应用 $b=\123,不过这样好像没有什么意义。

 

二、取得数组的引用

@arr1=(1,2,3); #可以理解为arr1为数组的首地址,前面加上@可以代表整个数组。

$b=\@arr1;      # b是数组首地址的地址,$b是数组的首地址,@$b代表整个数组。

$$b[0] 第一个元素。

$b->[0] 同上

 

对列表进行引用的结果只能获得列表最后一个元素的引用。

 

三、取得hash的引用

%hash1=("one"=>1,"two"=2,"three=>3");

$b=\%hash1;

原理和数组相同。

 

四、取得函数的引用

sub fun1
{
	print("good!");	
}

$a=\&fun1; #$a是函数fun1的首地址。
&$a();  #&把首地址当成是函数来解释。

 

$a = sub
{
	print("good!");	
};

&$a(); #匿名的函数,相当于$a存储了函数的首地址。

 

 

五、符号引用

$a=1;

$b="a"; #可以认为是引用的另一种书写方式,但是只有当$b在被当成引用解释的环境中才会生效。

print($$b); #输出1

 

 

 

 

 

分享到:
评论

相关推荐

    perl语言中的变量类型

    以上概述了Perl中三种主要的变量类型:标量、数组和哈希,以及引用的概念。掌握这些基本数据类型及其用法是学习Perl编程的基础。通过对这些类型的深入理解,你可以更有效地利用Perl进行各种应用开发,无论是简单的...

    Perl语言参考手册中文htmlPerl语言参考手册中文html

    2. **数据类型**:Perl支持多种数据类型,如标量(字符串、数字)、数组、哈希(关联数组)、引用以及复合数据类型。这些数据类型的灵活使用是Perl强大功能的关键。 3. **变量**:Perl中的变量以符号“$”、“@”或...

    Perl语言学习.pdf

    * Perl语言的数据类型:Perl语言的数据类型包括标量、数组、哈希、引用等多种类型。 * Perl语言的运算操作符:Perl语言的运算操作符包括加减乘除等基本运算符,另外还有字符串连接、复制等特殊运算符。 * Perl语言的...

    PERL。PERL。ADD

    然而,根据上下文推测,这可能是对Perl库或者特定模块的引用,或者是用户自定义的一个工具或函数集合。在Perl中,库和模块是通过CPAN(Comprehensive Perl Archive Network)提供的,它包含了大量的第三方代码资源,...

    PERL5中文教程详解

    Perl中的变量无需预先声明,类型自动推断,这使得代码编写更加便捷。另外,Perl支持正则表达式,这是其在文本处理方面的一大利器。 Perl的另一个亮点是模块化。Perl拥有丰富的CPAN(Comprehensive Perl Archive ...

    perl在生物信息中的应用

    基本的Perl数据类型、引用、矩阵、复杂数据结构、动态规划、近似字符串匹配等内容都是生物信息学中常见的数据处理技术。书中详细阐述了Perl中的数据结构,包括数组、哈希、数组的数组、哈希的哈希等,以及如何在Perl...

    perl语言编程和perl语言入门

    这本教程可能详细解释了Perl中的数据类型,如标量、数组、哈希以及引用,这些都是Perl编程的基础。此外,它可能还讨论了文件和目录操作,这是在Unix/Linux环境下常见的任务。高级主题如Perl的编译器工具如PerlCC,...

    Learning Perl第四版中文.pdf

    8. **高级话题**:涵盖符号引用、引用、匿名数组和哈希、位运算、类型glob以及perl语言的其他高级特性。 9. **Perl文化**:介绍Perl社区的风格和习惯,以及如何遵循“ TIMTOWTDI”(There's More Than One Way To ...

    Perl语言教程 Perl语言入门

    不同类型的变量有不同的前缀,例如 `%` 用于哈希(关联数组),`@` 用于数组,`&` 用于函数引用等。 2. **字符串与数字操作**:Perl自动处理字符串和数字之间的转换,支持基本的算术运算符和字符串连接。例如,`$a ...

    programming perl 网页版

    在《Programming Perl》第三版中,作者们详细讲解了Perl的语法特性,包括变量、数据类型、控制结构、正则表达式、文件和目录操作、模块系统等核心概念。 1. 变量与数据类型:Perl支持多种数据类型,如标量、数组、...

    Perl 6 技术参考手册_PERL技术参考_Perl_

    Perl 6 是 Perl 语言的一个重大升级版本,它在语法、性能和功能上都有显著的改进。本技术参考手册深入探讨了Perl 6的核心概念,包括...通过学习和实践手册中的内容,你将能够熟练掌握Perl 6,开发出高效、可靠的程序。

    Perl Programming - Basic

    Perl的设计原则是“让容易的事情变得容易,困难的事情成为可能”,这一理念贯穿于其语法设计之中。 #### 语法结构 - **变量声明**:使用`my`, `our`, `local`关键字来声明变量。 - **语句终止**:所有语句以分号`;...

    Perl PERL编程速成教程(上中下) pdf版

    这本"Perl编程速成教程(上中下) pdf版"提供了全面且深入的Perl学习资源,旨在帮助初学者快速掌握Perl编程基础并进阶到高级应用。 教程的上部分可能涵盖以下内容: 1. **Perl简介**:介绍Perl的历史、特点和适用...

    Perl 语言常见问题集

    理解这些引用类型及其操作可以帮助解决复杂问题。 4. **文件处理**:Perl提供了丰富的文件和I/O操作,如open(), read(), write()等。理解和熟练使用这些函数可以进行文件读写、文件指针操作等。 5. **模块使用**:...

    perl语言入门+perl语言编程

    这本书旨在教授Perl的基础知识,包括语法、变量、数据类型、流程控制语句(如if、for、while)、函数、模块的使用等。它会深入浅出地介绍如何读写文件、处理正则表达式以及进行基本的错误处理。Perl的正则表达式是其...

    perl manual

    9. **perldata.htm**:详细探讨了 Perl 中的数据类型,如标量、数组、哈希、引用、子程序和文件句柄,以及如何操作这些数据类型。还包括了 Perl 的动态类型和弱引用特性。 10. **perlref.htm**:介绍了 Perl 引用的...

    神奇的perl例子perl例子100个

    1. **变量和数据类型**:Perl支持多种数据类型,包括标量、数组、哈希等。标量用于存储单个值,数组用于存储有序集合,哈希则用于存储键值对。 2. **字符串操作**:Perl中的字符串可以进行拼接、查找、替换等操作,...

    Perl DBI 参考(强烈推荐)

    首先,DBI使用了类似于C语言中的指针的概念,但在Perl中称为引用,这些引用指向的对象被称为句柄。句柄是DBI中非常重要的概念,它们主要有三种类型:数据库对象句柄($dbh)、语句(查询)对象句柄($sth)和通用...

    Intermediate PERL

    2. **引用和作用域**:引用是Perl中指向变量或数据结构的一种特殊类型。作用域则是指变量的有效范围。掌握引用和作用域对于理解和编写复杂程序至关重要。 3. **操作复杂数据结构**:Perl支持多种数据结构,如数组、...

    Perl语言入门(Learning Perl).第五版.PDF

    在"Learning Perl"中,读者将接触到基础的变量类型,如标量、数组和哈希,这些是构建Perl程序的基础。此外,Perl的引用机制使得创建复杂的嵌套数据结构变得简单,这对于处理大量数据或进行复杂任务非常有用。 字符...

Global site tag (gtag.js) - Google Analytics