Skip to content

[FR] 6. Appel de Fonctions

Nicolas BOITEUX edited this page Dec 1, 2017 · 3 revisions

Appel de fonction depuis l'intérieur de l'objet (MEMBER)

Le mot clef MEMBER fonctionne comme un accesseur interne. Le mot clef MEMBER vérifie les principes d'encapsulation standard. Est-ce qu'une fonction existe avec le même nom? Est ce que le type de paramètre est respecté conformément à la déclaration de la classe?

Vous pouvez appeler une fonction qui nécessite un paramtre de type string de cette façon:

MEMBER("foo", "parameter");

Les types de paramères (string, array, scalar, any) transmit à la fonction MEMBER est très important car plusieurs fonctions portant le même nom peuvent être déclarés, et la différenciation se fera en fonction du type de paramètres.

Appeler une fonction depuis l'extérieur de l'objet

Vous pouvez appeler une fonction depuis l'extérieur de l'objet si la fonction est déclarée en visibilité PUBLIC. Il faut alors utiliser la référence de l'objet retournée par le constructor.

Exemple avec l'objet foo et sa fonction sayHelloWorld

_result = "sayHelloWorld" call _foo;

Exemple avec l'objet foo et sa fonction sayHelloWorld, et un paramètre de type string

_result = ["sayHelloWorld", ""] call _foo;

Exemple avec l'objet foo et sa fonction sayHelloWorld, et un paramètre de type array

_result = ["sayHelloWorld", []] call _foo;