Close
    Search Search

    Tutoriel : Fonctions pour les débutants

    Tutoriel : Fonctions pour les débutants

    Ceci est un tutoriel rapide sur l'utilisation des fonctions dans Lua pour les débutants. Ce tutoriel vous apprend l'anatomie des déclarations de fonction dans Lua et est destiné à vous guider tout au long du processus d'apprentissage à l'aide d'exemples avec des explications.


    Tutoriel 1 : Fonctions de base

    Les fonctions sont utilisées pour répéter le même processus plusieurs fois dans le code. Ils sont utiles pour faire des itérations personnalisées. Les itérations sont essentiellement des performances répétées, et dans Lua; ils sont couramment utilisés pour parcourir des listes (généralement longues) d'éléments et leur faire certaines choses. L'action de faire des fonctions s'appelle "les appeler" (par exemple, "j'ai d'abord appelé la fonction 1 puis la fonction 2.")


    Les déclarations de fonction (créer une fonction) sont simples mais demandent réflexion. La première étape consiste à déclarer le Lua mot-clé "fonction", puis le nom de la fonction, puis les parenthèses. Après cela, votre code est mis avec toutes les actions que vous souhaitez effectuer dans votre code. Pour finir, il suffit d'utiliser le Lua mot-clé "fin". Nommer les fonctions est exactement la même chose que nommer les variables, donc seuls les lettres, les nombres et le trait de soulignement (_) peuvent être utilisés dans les noms de fonction, car les noms de fonction occupent le variable nom (par exemple, si vous avez une fonction nommée "ticktock", vous écraserez la fonction si vous affectez le variable "tic tac" à quelque chose).


    Ce premier exemple est une fonction ticker. Un ticker s'ajoute simplement à un nombre lorsqu'il est cliqué, donc cette fonction ajoutera à une variable et imprimera un message "Tick!" lorsqu'il est appelé.

    x = 0 --définir x comme 0 fonction myTicker() --name is "myTicker" x = x + 1 --add 1 to x print("Tick!") fin

    C'est assez simple à faire une fois que vous comprenez comment le travailler. Il s'agit simplement de définir la fonction, elle n'a pas encore été exécutée ou appelée. Pour appeler une fonction, vous indiquez simplement le nom de la fonction avec une parenthèse après le nom. Lorsque vous appelez une fonction, elle ne s'exécute pas tant que la fonction n'est pas terminée, puis elle revient à la ligne sur laquelle vous l'avez appelée.


    print(x) --> 0 monTicker() --> Cochez ! print(x) --> 1 myTicker() --> Cochez ! print(x) --> 2 myTicker() --> Cochez ! monTicker() --> Cochez ! imprimer(x) --> 4

    Ceci est l'utilisation de base des fonctions en temps normal Lua. Les fonctions sont utiles pour effectuer de grandes actions à la fois, comme dans les lieux de mini-jeu et le mini-jeu est plus complexe.

    Tutoriel 2 : Fonctions avec un seul argument

    Non, les fonctions n'ont pas de désaccords.

    Parfois, vous devez transmettre des données à une certaine fonction sans utiliser un variable. Peut-être que vous avez une formule d'expérience et que vous avez besoin de savoir à quel niveau vous êtes basé sur le nombre d'expérience que vous avez. Les fonctions qui ont des arguments vous aideront avec cela.


    Dans les derniers exemples, vous pouvez voir qu'après le nom de la fonction, il y a fréquemment deux parenthèses sans rien dedans. Cela montre qu'il n'y a pas d'arguments pour la fonction. Les arguments sont des éléments de données envoyés à une fonction pour modifier son fonctionnement. Les arguments doivent être définis dans des fonctions dans Lua en indiquant une liste de variables dans la parenthèse du nom de la fonction lorsque vous la déclarez. Ainsi:

    x = 0 --définir x comme 0 fonction myTicker(y) --name est "myTicker", avec un argument "y" x = x + y --add y to x print("Tick!") fin

    Cette fonction utilise maintenant un variable, "y" comme argument. La fonction ajoute maintenant y à x lorsque la fonction est appelée. Si y n'est pas donné, ou s'il ne s'agit pas d'un nombre, le code générera une erreur. Normalement, les fonctions vérifieront si elles utilisent une entrée utilisateur. Lorsque vous allez appeler une fonction avec des arguments, vous mettez simplement le les variables ou des données directement dans la parenthèse de la fonction. Voici quelques exemples d'appels. imprimer(x) --> 0


    monTicker(1) --> Cochez ! print(x) --> 1 monTicker(2) --> Cochez ! print(x) --> 3 myTicker(3) --> Cochez ! monTicker(1) --> Cochez ! imprimer(x) --> 7

    Tutoriel 3 : Fonctions avec plus d'arguments

    Le dernier exemple n'utilisait qu'un seul argument. Que faire si vous souhaitez envoyer plus de données à une fonction ? Vous utilisez plusieurs arguments. Il est possible pour une fonction d'utiliser des arguments infinis (Rappelez-vous comment print() prend des arguments infinis ?). Les fonctions ne doivent pas nécessairement utiliser les arguments qui leur sont donnés. Cela ne provoquerait pas d'erreurs. Voici à nouveau la fonction ticker, n'utilisant que trois arguments.


    x = 0 --définir x comme 0 fonction myTicker(a, b, c) --name est "myTicker", avec trois arguments "a", "b" et "c" x = x + a + b + c --add a, b, et c to x print("Tic!") fin

    Comme toute fonction qui utilise tout les variables transmise, une erreur se produira si la fonction est appelée sans toutes les données nécessaires.

    print(x) --> 0 monTicker(1, 0, 0) --> Cochez ! print(x) --> 1 monTicker(1, 1, 0) --> Cochez ! print(x) --> 3 myTicker(1, 1, 1) --> Cochez ! monTicker(0, 0, 3) --> Cochez ! imprimer(x) --> 9

    Si vous souhaitez affirmer des erreurs plus précises si des données sont manquantes dans un appel de fonction, vous pouvez utiliser la fonction de bibliothèque "assert" qui provoquera des erreurs si le premier argument est nul or faux. Voici à nouveau la fonction, mais avec une certaine sécurité ajoutée pour la rendre plus précise avec ses erreurs.


    fonction myTicker(a, b, c) --name est "myTicker", avec trois arguments "a", "b" et "c" assert(a, "a n'a pas été donné") --est-ce que "a" existe ? assert(b, "b n'a pas été donné") --est-ce que "b" existe ? assert(c, "c n'a pas été donné") --est-ce que "c" existe ? assert(type(a) == "nombre", "a n'est pas un nombre") --est-ce que "a" est un nombre ? assert(type(b) == "nombre", "b n'est pas un nombre") --est-ce que "b" est un nombre ? assert(type(c) == "nombre", "c n'est pas un nombre") --est-ce que "c" est un nombre ? x = x + a + b + c --ajouter a, b et c à x print("Tick!") fin



    Chaque préfabriqué Lua La fonction vérifie ses arguments avant de faire quoi que ce soit avec eux. Les fonctions doivent toujours gérer les erreurs de manière appropriée dans Lua. Cela fait Lua plus simple et plus facile à utiliser, tout comme la façon dont il a été conçu.

    ajouter un commentaire de Tutoriel : Fonctions pour les débutants
    Commentaire envoyé avec succès ! Nous l'examinerons dans les prochaines heures.

    End of content

    No more pages to load