Messages recommandés

Posté(e)

Bonjour,

Alors voici mon problème : Je voudrais generer des fonctions par l'intermédiaire d'une boucle. Ces fonctions ne diffèrent que d'une variable. Cette variable ne changera pas durant l'execution de la fonction.

Un p'ti exemple :

for i = 1,3 do

Variable = function() MaFonction(Arg1, i)

end

Je voudrais que le "i" dans MaFonction(Arg1, i) soit interpreter comme une valeur, et pas comme une variable. Ce qui donnerai :

Variable[1] = function() MaFonction(Arg1, 1)

Variable[2] = function() MaFonction(Arg1, 2)

Variable[3] = function() MaFonction(Arg1, 3)

meri d'avance

Posté(e)

Salut,

Ta Variable[1] c'est une fonction ou le résultat d'une fonction (donc valeur) ?

Je pense que tu veux des fonctions donc tu peut utiliser ceci:

loadstring(s [,n])

s : chaine de caractères

n : nom de la fonction générée retournée

En anglais:

Loads the contents of string s, do not execute it, set chunk name = n;

returns compiled chunk as function, or nil and error message.

En français:

Charge le contenu d'une chaine de caractère s, mais ne l'exécute pas, configurer le nom de la parcelle de programme par n; retourne cetteparcelle compilée en une fonction, ou nil (nul) et un message d'erreur.

Donc pour régler ton problème :

for i = 1,3 do

Variable = loadstring("function MaFonction(Arg1,"..i..") ................ end")

end

Bon test pour voir !

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant