【问题标题】:Copying arrays from one reference to another in perl在perl中将数组从一个引用复制到另一个引用
【发布时间】:2018-10-19 16:34:36
【问题描述】:

我有一个匿名数组的引用,我想创建一个对该数组副本的引用。这是我的做法:

my $ref1 = ['a','b','c',];
my @arr = @$ref1;
my $ref2 = \@arr;

现在 $ref2 指向数组的副本。但是,我实际上并不关心@arr。有没有办法在没有中间变量的情况下执行这样的复制?

谢谢。

【问题讨论】:

  • 你可以这样做:my $ref2 = [@$ref1]

标签: arrays perl reference copy


【解决方案1】:

要创建对数组的引用,该数组是由变量$ref1 引用的数组的副本,您可以编写:

my $ref2 = [@$ref1];

现在,$ref2 是新的引用。

【讨论】:

  • 对于深拷贝,请使用 Storage 的 dclone。
猜你喜欢
  • 1970-01-01
  • 2021-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-13
  • 1970-01-01
  • 2014-05-18
相关资源
最近更新 更多