Нет, это не вариант. Функция не знает о хеше %h и его структуре, совсем не знает :)
Представьте, что этот хеш может быть не 2х уровневый, а много-много-вложенный по уровням и $ref eq $value может случится на другом уровне. вт, 1 окт. 2024 г. в 13:03, Steffen Winkler via Moscow-pm <[email protected] >: > use strict; > use warnings; > > my %h = ( a => { b=> 1}, aa=> {bb=>2, }, ); > > sub where_key { > my $ref = shift; > > while ( my ($key, $value) = each %h ) { > $ref eq $value > and return $key; > } > > return; > } > > my $k = where_key( $h{aa} ); > print $k; > exit; > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org >
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
