Iniciante Fundamentos
Tratamento de erros
Em Go, erros são valores comuns do tipo error. Não há exceções: você retorna e verifica o erro.
Retornando um erro
Por convenção, o erro é o último valor de retorno:
import (
"errors"
"fmt"
)
func dividir(a, b int) (int, error) {
if b == 0 {
return 0, errors.New("divisão por zero")
}
return a / b, nil
}
Quando dá tudo certo, o erro é nil.
Verificando o erro
O padrão mais comum em Go é checar logo após a chamada:
func main() {
resultado, err := dividir(10, 0)
if err != nil {
fmt.Println("Erro:", err)
return
}
fmt.Println("Resultado:", resultado)
}
Criando erros
err := errors.New("algo deu errado")
Com valores formatados, use fmt.Errorf:
nome := "config.txt"
err := fmt.Errorf("arquivo %s não encontrado", nome)
Resumo
- Erros são valores do tipo
error, retornados por último. nilsignifica que não houve erro.- Sempre verifique com
if err != nil.