Protected


Syntax
Protected[.<type>] <variable[.<type>]> [= <expression>] [, ...]
Description
Protected permet de créer une variable locale dans une procédure. Elle supplante l'éventuelle variable globale du même nom pendant toute la procédure (contrairement à une variable locale classique non protégée). Une valeur par défaut peut être assignée à la variable. Protected peut aussi être utilisé avec les tableaux, les listes chaînées et les maps.

La valeur de la variable locale sera réinitialisée à chaque appel de la procédure. Pour éviter cela, Static permet de déclarer une variable locale indépendante des variables globales tout en gardant sa valeur au fil des appels de la procédure.

Exemple: Avec une variable

  Global a
  a = 10
  
  Procedure Change()
    Protected a 
    a = 20
  EndProcedure 
  
  Debug a ; Affichera 10 car la variable a été protégée. 

Exemple: Avec un tableau

  Global Dim Array(2)
  Array(0) = 10
  
  Procedure Change()
    Protected Dim Array(2) ; This array is protected, it will be local.
    Array(0) = 20 
  EndProcedure 
  
  Change()
  Debug Array(0) ; Will print 10, as the array has been protected.