De perlop:
L'opérateur =>
est synonyme de la virgule sauf que il provoque son gauche opérande à interpréter comme une chaîne si elle commence par une lettre ou tiret de soulignement et est composée uniquement de lettres, chiffres et caractères de soulignement.
Cela comprend des opérandes qui pourraient autrement interprétés comme des opérateurs, constantes, le nombre de chaînes individuelles v-ou appels de fonction. En cas de doute sur ce comportement, l'opérande gauche peut être citée explicitement.
Sinon, l'opérateur => se comporte exactement comme l'opérateur virgule ou d'une liste séparateur d'arguments, selon contexte.
Par exemple:
use constant FOO => "something";
my %h = (FOO => 23);
équivaut à:
my %h = ("FOO", 23);
Il n'est pas:
my %h = ("something", 23);
L'opérateur =>
est utile pour documenter la correspondance entre clés et valeurs dans les hachages, et autres éléments associés dans les listes.
%hash = ($key => $value);
login($username => $password);
De PBP:
J'ai trouvé quelques bonnes informations de Perl meilleures pratiques à propos Fat Commas=>
et je pense qu'il devrait être agréable de mentionner ici aussi.
Il est préférable de réserver la graisse exclusivement par des virgules pour les choses suivantes: -
Utilisez quand la construction d'un hachage:
my %h = (FOO => 23);
ou lors du passage arguments nommés à un sous-programme ie. ,
$text = format_text({FOO => 23, BAR => 30});
ou lorsque c réer une constante:
Readonly my $FOO => "23";
Pour plus de détails, voir le chapitre 4: Les valeurs et expressions (Fat) Commas section de Perl meilleures pratiques.
Veuillez lire la documentation. Vous devriez avoir automatiquement atteint [perldoc perlop] (http://perldoc.perl.org/perlop.html), l'endroit où les informations sur les opérateurs peuvent être trouvées, avant de poster ceci, et vous pourriez alors demander une question de clarification si tu dois. Il devient vraiment fastidieux d'avoir autant de réponses simplement en citant la documentation - ce n'est pas ajouter des connaissances. – Ether
Assez juste. Pour ma défense, j'ai fait Google, qui a refusé de rechercher '=>'. – Lazer
Mais contre votre défense, vous avez apparemment abandonné après cela. –