PasDEffetDeBord

Attribut des instructions Fonction, Operateur, Procedure. Spécifie que l'appel n'effectue pas d'effet de bord.

Syntaxe

PasDEffetDeBord

Description

Si l'appel met à jour une variable globale transmise à l'appel par l'appelant, cela est un effet de bord. Ainsi, l'objet en paramètre pourrait être détruit et encore référencé !

L'attribut PasDEffetDeBord spécifique que l'appel n'effectue pas d'effet de bord.

Ceci n'est pas le comportement par défaut des procédures et des fonctions sensées travaillées sur les variables globales. Ceci est le comportement par défaut des méthodes sensées travaillées exclusivement sur les propriétés de l'objet auquel elle se rapporte.

La caractéristique de ne pas faire d'effet de bord permet à Up ! Optimizer d'optimiser la transmission de paramètres en évitant de protéger systématiquement ces situations. Le programme en est d'autant plus rapide parce qu'Up ! Object Management System est moins sollicité.

Exemple

Variable
/******/
/****************************************************************/
Procedure Optimiser(PasDEffetDeBord) P1(A : Nul Ou Caractere)
/* Objet : La procedure ne fait pas d'effet de bord. */
/****************************************************************/
Debut
...
/* Pas de mise a jour de V. */
...
Fin Procedure

/****************************************************************/
Procedure Optimiser(EffetDeBord) P2(A : Nul Ou Caractere)
/* Objet : La procedure fait un effet de bord. */
/****************************************************************/
Debut
...
/* Mise a jour de V. */
V="hello";
...
Fin Procedure

Principal
/*******/
Debut
...
V="coucou";
...
/* Pas d'effet de bord sur V. */
P1(V);
...
/* Effet de bord sur V. */
P2(V);
...
Fin Procedure

Voir aussi

EffetDeBord pour signaler un effet de bord.

Traduction

---------