Outils pour utilisateurs

Outils du site


fr:perl:perlcontext

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:perl:perlcontext [2021/07/12 20:19] – ↷ Page moved from fr:perl:perlcontext to en:perl:perlcontext Bruno Manzonifr:perl:perlcontext [2024/05/11 16:44] (Version actuelle) adminw1k1
Ligne 1: Ligne 1:
 +====== Contexte ====== 
 +
 +=== Contexte forcé ===
 +<code>
 +en ayant une valeur de gauche du bon type, cela force le type !
 +$a= forcer le contexte scalaire # fonctionne avec tableau, liste, hachage (+ clés + valeurs) et peut-être d'autres
 +@a= forcer le contexte tableau  # fonctionne avec liste, hachage (+ clés + valeurs) et peut-être d'autres, mais pas avec scalaire
 +%a= forcer le contexte hachage  # fonctionne avec tableau, liste,                       et peut-être d'autres, mais pas avec scalaire
 +()= forcer le contexte liste    # fonctionne avec tableau, liste, hachage (+ clés + valeurs) et peut-être d'autres, mais pas avec scalaire
 +
 +Alternativement :
 +pour le contexte scalaire : précédez par la fonction : scalar() ou scalar
 +pour le contexte liste    : encadrez avec : ( )
 +pour le contexte tableau  : encadrez avec : @{[val0, val1              ]} déréférencement d'un tableau de référence
 +pour le contexte hachage  : encadrez avec : %{{key0, val0, key1, val1  }} déréférencement d'un hachage de référence
 +@array = () = 
 +l'opérateur force également
 +</code>
 +=== et Liste en contexte SCALAIRE ===
 +<code>
 +scalar @array     = nombre d'éléments
 +scalar (a,2,3)    = nombre d'éléments
 +</code>
 +=== Hachage en contexte SCALAIRE ===
 +<code>
 +scalar %hash = 0 si le hachage est vide
 +scalar %hash = seaux_utilisés / total de seaux
 +
 +</code>
 +=== Hachage en contexte TABLEAU ou LISTE ===
 +<code>
 +@array =        $hash  (clé0, valeur0, clé1, valeur1, ....)
 +@array = keys   $hash  (clé0, clé1, ....)
 +@array = values $hash  (valeur0, valeur1, ....)
 +</code>