我试图将哈希的引用传递到另一个模块中定义的子例程中以提高性能。在此其他模块的子例程中,引用被取消引用为:
sub subRoutine{
my $hash_ref = $_[0];
my %hash = %$hash_ref;
$hash{$a_key} = $a_value;
}
因此,这会更改此模块中该键的值,但不会更改调用此子例程的 perl 程序中的值。是什么原因,我该如何避免这种情况?使用引用而不是传递散列/返回散列以提高性能是否正确?
提前致谢!最良好的祝愿!