Perl では、次のように変数に別の変数への参照を割り当てることができます。
my @array = (1..10);
my $ref = \@array;
そして、それは参照であるため、次のようなことを行うことができ、両方の変数が影響を受けます:
push @array, 11;
push @$ref, 12;
1..12
両方の変数が同じスペースを指しているため、両方の変数に が含まれます。
さて、同じことを行う方法があるかどうか知りたいのですが、参照から始めて、後でその参照をプレーン変数に割り当てます。例えば:
my $ref = [1..12];
my @array = # something here that makes @array point to the same space $ref contains
私はそれを次のように割り当てることができることを知っています:
my @array = @$ref;
しかし、それはコピーです。$ref または @array を変更すると、それらは独立した変更になります。
@array が $ref と同じ変数を指すようにする方法はありますか?