Fonctions

20 min Niveau 6

Une fonction est un groupe d'instructions qui, ensemble, exécutent une tâche. Chaque programme Go possède au moins une fonction, qui est main(). Vous pouvez diviser votre code en plusieurs fonctions distinctes. La façon dont vous divisez votre code entre les différentes fonctions vous appartient, mais logiquement, la division devrait être telle que chaque fonction effectue une tâche spécifique.

Une déclaration de fonction indique au compilateur le nom de la fonction, le type de retour et les paramètres. Une définition de fonction fournit le corps réel de la fonction.

La bibliothèque standard de Go fournit de nombreuses fonctions intégrées que votre programme peut appeler. Par exemple, la fonction len() prend des arguments de différents types et renvoie la longueur du type. Si une chaîne de caractères lui est passée, la fonction renvoie la longueur de la chaîne en octets. Si un tableau lui est transmis, la fonction renvoie la longueur du tableau.

Les fonctions sont également appelées méthodes, sous-routines ou procédures.

Définir une fonction

La forme générale d'une définition de fonction dans le langage de programmation Go est la suivante :

func function_name( [parameter list] ) [return_types]
{
    body of the function
}

Une définition de fonction dans le langage de programmation Go se compose d'un en-tête de fonction et d'un corps de fonction. Voici toutes les parties d'une fonction :

  • Func - Il commence la déclaration d'une fonction.
  • Nom de la fonction - C'est le nom réel de la fonction. Le nom de la fonction et la liste des paramètres constituent ensemble la signature de la fonction.
  • Paramètres - Un paramètre est comme un espace réservé. Lorsqu'une fonction est invoquée, vous transmettez une valeur au paramètre. Cette valeur est appelée paramètre réel ou argument. La liste des paramètres fait référence au type, à l'ordre et au nombre de paramètres d'une fonction. Les paramètres sont facultatifs, c'est-à-dire qu'une fonction peut ne pas contenir de paramètres.
  • Type de retour - Une fonction peut retourner une liste de valeurs. Le paramètre return_types est la liste des types de données des valeurs que la fonction renvoie. Certaines fonctions effectuent les opérations souhaitées sans renvoyer de valeur. Dans ce cas, le return_type n'est pas nécessaire.
  • Corps de la fonction - Il contient un ensemble d'instructions qui définissent ce que fait la fonction.

Exemple

Le code source suivant présente une fonction appelée max(). Cette fonction prend deux paramètres, num1 et num2, et renvoie le maximum entre les deux.

/* function returning the max between two numbers */
func max(num1, num2 int) int {
    /* local variable declaration */
    result int

    if (num1 > num2) {
        result = num1
    } else {
        result = num2
    }
    return result 
}

Appeler une fonction

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus