Perl 从哈希引用中复制哈希
我有一个对散列的散列引用 ref->hash1Perl 从哈希引用中复制哈希,perl,hash,Perl,Hash,我有一个对散列的散列引用 ref->hash1 hash2 等等 我正在尝试复制2个哈希值以用于相互比较 my %hash1 = %$ref->{ $name1}; // but I can't get it to work. my %hash2 = %$ref->{ $name2}; 我得到:参考发现,即使大小的列表预期在 我知道我没有宣布这一权利,因此任何帮助都将不胜感激 这里有错误:%$ref->{$name1},这是不正确的尊重。请检查我下面的例子 #!/u
hash2
等等 我正在尝试复制2个哈希值以用于相互比较
my %hash1 = %$ref->{ $name1}; // but I can't get it to work.
my %hash2 = %$ref->{ $name2};
我得到:参考发现,即使大小的列表预期在
我知道我没有宣布这一权利,因此任何帮助都将不胜感激 这里有错误:
%$ref->{$name1}代码>,这是不正确的尊重。请检查我下面的例子
#!/usr/bin/perl
use strict;
use Data::Dumper;
my $ref = {
hash1 => { a => 1, b => 2 },
hash2 => { c => 3, d => 3 },
};
my $name = 'hash1';
my %hash = %{ $ref->{$name} }; # right dereference
print Dumper(\%hash);
由于运算符优先级,您需要这样做:
my %hash1 = %{ $ref->{$name} };
你所说的“隐式解引用”是什么意思?我看不出这有什么用