Affectation manuelle de types et transtypage

Que les inconditionnels du « typage fort » se rassurent, il existe une alternative au typage automatique afin de rester maître du typage des variables. Pour ce faire, il nous faut définir le type souhaité entre crochets et placer ce dernier devant le nom de la variable, comme par exemple :


PS > [int]$var = 12
 

En écrivant cela, vous êtes sûr que la variable $var sera du type entier. Mais il n’y a aucune différence entre $var = 12 et [int]$var = 12, nous direz-vous ! Certes, pour l’instant l’intérêt est minime, mais lorsque vous serez de grands « powershelleurs » et que vos scripts commenceront à prendre de l’ampleur, le fait de déclarer vos variables avec un type associé rendra votre travail beaucoup plus compréhensible pour les autres mais permettra surtout d’éviter qu’une valeur d’un type différent ne lui soit affectée par erreur.

Exemple


PS > [int]$nombre = Read-Host 'Entrez un nombre '  
Entrez un nombre : cent 
 
Cannot convert value "cent" to type "System.Int32".  
Error: "Input string was not in a correct format."
 

Dans l’exemple ci-dessus, le texte saisi cent n’a pas été reconnu comme un nombre entier, il est donc rejeté par l’interpréteur de commandes. Si nous n’avions pas précisé...

Pour consulter la suite, découvrez le livre suivant :
couv_EI2CPOWFOL.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Types de données
Suivant
Rendre obligatoires la déclaration et l’initialisation des variables