Go heeft geen uitzonderingen voor normale fouten. In plaats daarvan zijn fouten waarden die door functies worden geretourneerd (meestal als de laatste retourwaarde), en roepende functies controleren ze expliciet. Dit maakt foutafhandeling zichtbaar, opzettelijk en onmogelijk om stilzwijgend te negeren — een bepaalde Go-filosofie.
Het error-type en het basispatroon
{
Error()
}
(, ) {
b == {
, errors.New()
}
a / b,
}
result, err := divide(, )
err != {
fmt.Println(, err)
}
fmt.Println(result)
