Go by Example: Functions

Las funciones son fundamentales en Go. Aprenderemos sobre funciones con algunos ejemplos diferentes.

package main
import "fmt"

Aquí hay una función que toma dos int y devuelve la suma como un int.

func plus(a int, b int) int {

Go requiere retornos explícitos, es decir, no retornará automáticamente el valor de la última expresión.

    return a + b
}

Cuando tienes múltiples parámetros consecutivos del mismo tipo, puedes omitir el nombre del tipo para los parámetros del mismo tipo hasta el último parámetro que declara el tipo.

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

Llama a una función tal como esperarías, con name(args).

    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

Hay otras características en las funciones de Go. Una es los valores de retorno múltiples, que veremos a continuación.

Siguiente ejemplo: Multiple Return Values.