Perl notes

Perl 引用与解引用

https://blog.csdn.net/flyqwang/article/details/6953195

Perl copy 引用

你可以对任何东西创建'引用',包括标量,函数和其他的引用。
在 使用规则 1 中,当大括号里面是一个像$aref这样的标量变量时,你可以省略掉这个大括号。例如, @$aref 和 @{$aref}是一样的,$$aref[1] 和 ${$aref}[1]是一样的。 如果你是初学者,建议你还是养成加上大括号的习惯。
下面的操作不会copy '引用'指向的数组:
$aref2 = $aref1;
你将得到两个'引用',它们都指向同一个数组。如果你修改了$aref1->[23]的值,那么你查看变量$aref2->[23]时,它也相应地变了。

  • copy这个数组,你需要这样

      $aref2 = [@{$aref1}]; 
    

使用符号 [...] 来创建一个新的匿名数组, 而且这个新的数组的'引用'被赋值给了$aref2 。 这个新的数组用'引用'$aref1所指向的数组的内容来初始化。

  • copy一个匿名哈希,你需要这样

      $href2 = {%{$href1}}; 
    

你可能感兴趣的:(Perl notes)