加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

arrays – Perl:打印到子例程的数组的名称

发布时间:2020-12-15 23:32:14 所属栏目:大数据 来源:网络整理
导读:我将一个数组和一个标量传递给一个函数来检查该值是否是数组的一部分,以防它不是部分,然后推送到数组.为了参考目的,它必须显示的是在推动它时必须显示数组的名称.这是我的代码 use v5.10.1;use strict;use warnings;my @ARRAY1 = qw/This is array of backup
我将一个数组和一个标量传递给一个函数来检查该值是否是数组的一部分,以防它不是部分,然后推送到数组.为了参考目的,它必须显示的是在推动它时必须显示数组的名称.这是我的代码

use v5.10.1;
use strict;
use warnings;

my @ARRAY1 = qw/This is array of backup /;
my @ARRAY2;


my $value = "version.xml" ;


sub CheckPush($$)
{

my $val = shift (@_);
my $array_ref= shift (@_);

     unless ($val ~~ @$array_ref )
     {
        print "$val is going to push to array  n";
        push(@$array_ref,$val);
     }   
return (@$array_ref);
} 

@ARRAY1 = CheckPush($value,@ARRAY1);
print "out n";
foreach $_ (@ARRAY1) {
print "$_ n";
}

@ARRAY2 = CheckPush ($value,@ARRAY2);
print "out2 n";
foreach $_ (@ARRAY2) {
print "$_ n";
}

出局应该如下

$val is going to push Array (@ARRAY1)
$val is going to push Array (@ARRAY2)

解决方法

传递数组的名称和引用;这并不难.

人们使用源过滤器或PadWalker :: var_name做这样的事情,但这不是一个好主意.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读