在perl中将数组从一个引用复制到另一个引用

Yak*_*Dan 0 arrays perl copy reference

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

my $ref1 = ['a','b','c',];
my @arr = @$ref1;
my $ref2 = \@arr;
Run Code Online (Sandbox Code Playgroud)

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

谢谢。

Håk*_*and 5

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

my $ref2 = [@$ref1];
Run Code Online (Sandbox Code Playgroud)

现在,$ref2是新的参考。