如何从引用的变量“取消链接”Perl数组引用?

时间:2010-06-24 15:45:10

标签: perl arrays reference

在Perl 5.10.1中:

#!/usr/bin/perl

my @a = (1, 2, 3);
my $b = \@a;
print join('', @{$b}) . "\n";
@a = (6, 7, 8);
print join('', @{$b}) . "\n";

这打印123然后打印678.但是,我想两次得到123(即重新分配@a的值不会改变$b引用的数组。我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

引用@a

的副本
my $b = [ @a ];

答案 1 :(得分:0)

Bretter使用dclone深度克隆指向匿名数据结构的引用。