Go Valori di ritorno

Esempio

Una funzione può restituire uno o più valori al chiamante:

func AddAndMultiply(a, b int) (int, int) {
    return a+b, a*b
}

Il secondo valore di ritorno può anche essere l'errore var:

import errors

func Divide(dividend, divisor int) (int, error) {
    if divisor == 0 {
        return 0, errors.New("Division by zero forbidden")
    }
    return dividend / divisor, nil
}

Devono essere annotate due cose importanti:

  • La parentesi può essere omessa per un singolo valore di ritorno.
  • Ogni return istruzione deve fornire un valore per tutti i valori di ritorno dichiarati.