Le Go par l'exemple: Fonctions

Les fonctions sont centrales en Go. Nous allons les découvrir à travers quelques exemples différents.

package main
import "fmt"

Voici une fonction qui prend deux int en paramètres, et renvoie leur somme, un int.

func plus(a int, b int) int {

Go a besoin de retours explicites : il ne renverra pas automatiquement la valeur de la dernière expression.

    return a + b
}

Quand vous avez plusieurs paramètres consécutifs du même type, vous pouvez vous passez des déclarations de type jusqu’au dernier, qui le déclare.

func plusPlus(a, b, c int) int {
    return a + b + c
}

On appelle une fonction comme on s’y attend, avec nom(arguments)

func main() {
    res := plus(1, 2)
    fmt.Println("1+2 =", res)
    res = plusPlus(1, 2, 3)
    fmt.Println("1+2+3 =", res)
}
$ go run functions.go 
1+2 = 3
1+2+3 = 6

Les fonctions ont plusieurs autres fonctionnalités particulières. L’une d’entre elles, c’est les valeurs de retour multiples, que nous allons regarder maintenant.

Exemple suivant: Valeurs de retour multiples.