Les variables en Q#

1. Le mot-clé let et l’immutabilité let immutabilité

Le mot-clé let permet de définir une variable immutable qui va être une variable locale. C’est-à-dire qu’elle a une consistance dans le scope courant, que ce soit le corps (body) d’une opération ou encore dans une boucle for par exemple.

Dans l’exemple suivant, on déclare un tableau de portes quantiques. En l’occurrence, la collection des portes de Pauli (X, Y, Z et identité) :

let pauliGates = [PauliX, PauliY, PauliX, PauliI]; 

Il n’y a donc pas de typage explicite avec let : c’est le compilateur qui gère le type selon la valeur affectée.

2. Les mots-clés mutable et set mutable set

Se pose donc la question de la création de variables locales qui seraient mutables et donc modifiables a posteriori. Pour répondre à ce besoin le langage Q# offre un mot-clé mutable qui permet de créer une variable mutable par la suite modifiable grâce au mot-clé set.

Dans le code suivant, on déclare une fonction qui prend en paramètre un entier taille. On souhaite allouer un tableau d’entiers. Dans chaque case du tableau, on désire stocker le carré de l’index de la case.

Si taille = 6 : on désire renvoyer le tableau [ 0, 1, 4, 9, 16, 25].

Si on crée le tableau avec let, il sera immutable et on ne pourra plus modifier son contenu. On utilise donc mutable :

mutable...
Pour consulter la suite, découvrez le livre suivant :
couv_DPQINF.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
Opérations et fonctions Q#
Suivant
Manipuler des bits quantiques en Q#