当前位置: 首页 > news >正文

龙腾盛世网站建设网站建设网站模版

龙腾盛世网站建设,网站建设网站模版,黄骅港什么时候开海,我做网站如何分流客户Perl引用是一个标量数据类型,该数据类型保存另一个值的位置,该值可以是标量,数组或哈希。 创建引用 变量,子程序或值创建引用很容易,方法是在其前面加上反斜杠,如下所示: $scalarref \$foo; $arrayref …

Perl引用是一个标量数据类型,该数据类型保存另一个值的位置,该值可以是标量,数组或哈希。

创建引用

变量,子程序或值创建引用很容易,方法是在其前面加上反斜杠,如下所示:

$scalarref =\$foo;
$arrayref  =\@ARGV;
$hashref   =\%ENV;
$coderef   =\&handler;
$globref   =\*foo;

您不能使用反斜杠运算符在I/O句柄上创建引用,但可以使用方括号创建对匿名数组的引用,如下所示-

 $arrayref=[1, 2, [a, b, c]];

您可以使用大括号以类似方式创建对匿名哈希的引用,如下所示:

$hashref={Adam  => Eve,Clyde => Bonnie,
};

可以通过使用不带子名的sub来创建对匿名子程序的引用,如下所示-

$coderef=sub { print "Boink!\n" };

取消引用

 要取消引用的引用,只需使用$,@或%作为引用变量的前缀,具体取决于引用是指向标量,数组还是哈希。 示例-

#!/usr/bin/perl$var=10;# Now $r has reference to $var scalar.
$r =\$var;# Print value available at the location stored in $r.
print "Value of $var is : ", $$r, "\n";@var=(1, 2, 3);
# Now $r has reference to @var array.
$r =\@var;
# Print values available at the location stored in $r.
print "Value of @var is : ",  @$r, "\n";%var=(key1 => 10, key2 => 20);
# Now $r has reference to %var hash.
$r =\%var;
# Print values available at the location stored in $r.
print "Value of %var is : ", %$r, "\n";

当执行上述程序时,将产生以下输出-

Value of 10 is : 10
Value of 1 2 3 is : 123
Value of %var is : key220key110

如果不确定变量类型,则可以使用 ref 轻松了解其类型,如果其参数是引用,则返回以下字符串之一。否则,它返回false-

SCALAR
ARRAY
HASH
CODE
GLOB
REF

让我们尝试以下示例-

#!/usr/bin/perl$var=10;
$r =\$var;
print "Reference type in r : ", ref($r), "\n";@var=(1, 2, 3);
$r =\@var;
print "Reference type in r : ", ref($r), "\n";%var=(key1 => 10, key2 => 20);
$r =\%var;
print "Reference type in r : ", ref($r), "\n";

当执行上述程序时,将产生以下输出-

Reference type in r : SCALAR
Reference type in r : ARRAY
Reference type in r : HASH

循环引用

当两个引用包含彼此的引用时,将发生循环引用。创建引用时必须要小心,否则循环引用可能会导致内存泄漏。以下是一个示例-

#!/usr/bin/perlmy $foo=100;$foo =\$foo;print "Value of foo is : ", $$foo, "\n";

当执行上述程序时,将产生以下输出-

Value of foo is : REF(0x9aae38)

引用函数

如果您需要创建一个信号处理程序,则可能会发生这种情况,因此您可以通过在函数名称前添加\&来生成对该函数的引用, 以下是一个示例-

#!/usr/bin/perl# Function definition
sub PrintHash {my (%hash)=@_;foreach $item (%hash) {print "Item : $item\n";}
}
%hash=(name => Tom, age => 19);# Create a reference to above function.
$cref =\&PrintHash;# Function call using reference.
&$cref(%hash);

当执行上述程序时,将产生以下输出-

Item : name
Item : Tom
Item : age
Item : 19

Perl - References(引用) - 无涯教程网无涯教程网提供Perl引用是一个标量数据类型,该数据类型保存另一个值的位置,该值可以是标量,数组或...https://www.learnfk.com/perl/perl-references.html

http://www.yayakq.cn/news/694421/

相关文章:

  • 一起装修网官方网站刘家窑做网站
  • 谷歌google下载安徽网站优化厂家报价
  • 成都网站建设推来客网站系统报价蓝色的包装材料企业网站模板
  • 深圳市建设工程质量监督总站网站个人简历word文档模板
  • seo可以提升企业网站的网站开发的前端框架有哪些
  • 陕西交通建设集团蓝商公司网站网页图片抓取
  • 推广及建设网站汕头网站推广系统
  • 东莞市微信网站建设品牌公司架设网站费用怎么做分录
  • 比较好的做外贸网站拍摄公司形象宣传片
  • 万网个人网站网络架构和网络拓扑的区别
  • seo全称英文怎么说龙岩抖音seo搜索排名
  • 建设网站 关于竣工结算的期限网站建设翻译英文是什么
  • 杭州市建设职业中心网站长沙免费网站排名
  • 校园网网站建设费用自己做的网站首页变成符号了
  • 移动网站制作抄袭网站模板
  • 电脑软件下载官方网站十大电脑必玩大型免费网游
  • 阿里巴巴网站推广方式江苏省工程建设招标网站
  • vps怎么搭建网站网站建设公司怎么做好
  • 网站诸多湘潭网站建设价格
  • 九江网站建设网站建设的招聘要求
  • 重庆网站开发服务品牌营销的定义
  • 网站建设服务器什么意思医疗机构网站模板
  • 淘宝客怎么做的网站推广wordpress门户主题下载
  • 做个素材网网站难做吗WordPress网站主题升级
  • 给网站做广告汽车4s销售网站模板
  • 建网站现软件网站流量查询网站统计查询
  • 怎样申请网站空间青年人爱看的网站
  • 网站策划书3000湘潭学校网站建设 磐石网络专注
  • 阿里巴巴官网网站黄骅港客运站电话号码
  • 寿光网站建设哪家好昌邑网站建设