Из perlop:
Оператор =>
является синонимом запятой, за исключением того, что его левый операнд интерпретируется как строка, если он начинается с буквы или знака подчеркивания и состоит только из букв, цифр и знаков подчеркивания.
Сюда входят операнды, которые в противном случае могли бы интерпретироваться как операторы, константы, v-строки с одним числом или вызовы функций. Если вы сомневаетесь в таком поведении, левый операнд может быть явно указан в кавычках.
В противном случае оператор => ведет себя точно так же, как оператор запятой или разделитель аргументов списка, в зависимости от контекста.
Например:
use constant FOO => "something";
my %h = ( FOO => 23 );
эквивалентно:
my %h = ("FOO", 23);
Нет:
my %h = ("something", 23);
Оператор =>
полезен для документирования соответствия между ключами и значениями в хэшах и другими парными элементами в списках.
%hash = ( $key => $value );
login( $username => $password );
Из PBP:
В разделе Perl Best Practices я нашел полезную информацию о толстых запятых =>
, и я думаю, что было бы неплохо упомянуть ее и здесь.
Жирную запятую лучше оставить исключительно для следующих вещей:
Используйте его при создании хеша:
my %h = ( FOO => 23 );
или при передаче именованных аргументов подпрограмме, т. е.
$text = format_text({FOO => 23, BAR => 30});
или при создании константы:
Readonly my $FOO => "23";
Дополнительные сведения см. в разделе Глава 4: Значения и выражения (жирные запятые) Perl Best Practices.
person
Nikhil Jain
schedule
04.11.2010
=>
. - person Lazer   schedule 04.11.2010