LOCAL

Instruction

Syntaxe

Déclare une variable propre à un appel de FUNCTION. Elle masque une variable du programme de même nom.

LOCAL <name> [= <value>]
LOCAL <name> AS <type> [= <value>]
LOCAL <name>, <name>[, <name>…]
LOCAL NewList <name>.<type>()
LOCAL NewMap <name>.<type>()
Define <name> [= <value>]
Protected <name> [= <value>]

S’écrit aussi : Protected

Les éléments

<name>Le nom de la variable. Sans valeur, elle part de 0, ou de "" pour un nom en $.
<value>Valeur de départ facultative : n'importe quelle expression, calculée à chaque appel.
<type>Un type de nombre, de texte ou d'enregistrement pour AS ; le type des éléments pour NewList et NewMap.

À savoir

  • Define et Protected de PureBasic sont lus comme LOCAL.
  • LOCAL se place dans une FUNCTION. En haut du programme, une variable LOCAL (ou Define) affectée de nouveau plus loin donne un programme qui ne démarre pas (Identifier … has already been declared). Utilisez GLOBAL ou AS à cet endroit.
  • Dans une FUNCTION, un nom qui n'est ni un paramètre, ni LOCAL, ni GLOBAL, ni affecté par le programme au-dessus de la fonction, est de toute façon une nouvelle variable locale. LOCAL rend l'intention claire, et il est obligatoire pour masquer une variable du programme.
  • Sous OPTION EXPLICIT, LOCAL compte comme une déclaration.

Exemple

score = 1FUNCTION Bump()  LOCAL score = 99  LOCAL bonus AS integer = 2.5  Protected count  count = count + 1  score = score + bonus + countENDFUNCTION scoreConsole(Str(Bump()) + " " + Str(score))   ' 102 1
Dans le manuel : Variables et types