J'hésiatais à mettre ceci en tutoriel, mais je ne sais pas quelle sera la pérénité du mot clé "Static" de la nouvelle mouture d'Autoit à la lecture de la note du fichier d'aide. Donc pour l'instant ce sera un exemple.
un des avantages de déclarer une variable en static est que sa durée de vie est valide tout au longs de l'exécution du script et ceux MEME si elle est locale.
(voir l'exple du fichier d'aide)
Le 2eme est que théoriquement (on verra qu'en pratique ce n'est pas encore ça ... mais c'est expérimental pour l'instant) est qu'une variable statique n'est accessible que dans la part de code où elle est déclarée.
Du coups si je fournie un au3 avec des services qui s'appuient sur une valeur déclarée statiquement dans mon code, un code tierce l'utilisant ne pourra agir dessus que si je lui donne des accesseur en lecture / écriture. Chose qui n'était pas possible avant.
Le hic, est qu'après avoir testé, est que ça marche bien pour les variables déclarées statiquement dans des fonctions, mais pas en tête de script.
Normalement, en C par exple, on déclare
Code : Tout sélectionner
static int toto=5;
Malheureusement ici, dans mon exemple, les varaibles $ACTION_SET et $ACTION_GET peuvent être modifiées mais bon c'est un début.
fichier censé être un au3 d'inclusion "protégeant" la variable $My_static_var
► Afficher le texte
► Afficher le texte