使用散列和数组的组合的Perl表达式

使用散列和数组的组合的Perl表达式,第1张

概述我很难理解一段代码.声明是: push(@{$errorfile{$var}}, $filepath); 我相信push用于将值附加到数组的末尾.但上面的表达让我很困惑.有一个哈希值,并且使用了@符号(通常与数组名称一起使用).在代码的开头,“errorfile”声明为: my %errorfile; 有人可以帮帮我吗? %errorfile是一个哈希值. $errorfile {$var}是散列 我很难理解一段代码.声明是:

push(@{$errorfile{$var}},$filepath);

我相信push用于将值附加到数组的末尾.但上面的表达让我很困惑.有一个哈希值,并且使用了@符号(通常与数组名称一起使用).在代码的开头,“errorfile”声明为:

my %errorfile;

有人可以帮帮我吗?

解决方法 %errorfile是一个哈希值.

$errorfile {$var}是散列中的(标量)值,对应于键$var.该值恰好是数组引用.

@ {$errorfile {$var}}是引用所引用的数组.

示例初始化:我的%errorfile =(foo => [12,34],bar => [56]);.在$var =“bar”之后; $filepath =“my / file.txt”; push(@ {$errorfile {$var}},$filepath); %errorfile变为(foo => [12,bar => [56,“my / file.txt”]).

在DavID W.发布的Perl References链接中查看更多详细信息.

一些亮点:

> $标量变量包含标量值,可以是undef,整数,浮点数,字符串或引用.
> @array变量包含一个数组,这是一个可转换的标量值列表.
> a%哈希变量包含从字符串到标量值的映射.

因此,将数组放入散列的唯一方法是将数组引用放入散列中的值.

总结

以上是内存溢出为你收集整理的使用散列和数组的组合的Perl表达式全部内容,希望文章能够帮你解决使用散列和数组的组合的Perl表达式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1222595.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存