哈希作为参数传递如何处理?

哈希作为参数传递如何处理?

sub hash_sort
{
    
  my %org_hash= $_[0];
  my @key_s  = sort {$org_hash{$b} <=> $org_hash{$a}} keys %org_hash;    
  foreach(@key_s)
  {
      printf "%s\t$org_hash{$_}\n", $_;
   }
}

hash_sort %hashcc


哈希如何作为参数来传递
展开成list吧
用引用传递:

[Copy to clipboard] [ - ]
CODE:
sub hash_sort
{
   
  my $org_hash= shift;
  my @key_s  = sort {$org_hash{$b} <=> $org_hash{$a}} keys %{$org_hash};   
  foreach(@key_s)
  {
      printf "%s\t$org_hash->{$_}\n", $_;
   }
}

hash_sort \%hashcc

有一小地方要纠正一下

sub hash_sort
{
    
  my $org_hash= shift;
  my @key_s  = sort {$org_hash->{$b} <=> $org_hash->{$a}} keys %{$org_hash};   
  foreach(@key_s)
  {
      printf "%s\t$org_hash->{$_}\n", $_;
   }
}

hash_sort \%hashcc



谢谢,我想到了引用。但在使用引用的值时,没有使用-> 所以出错。
引用还是蛮重要的,希望对其他兄弟也能有所启发