Sobes.tech
Назад к вопросам
Senior
6

Что такое error в Go? Как обрабатывать ошибки?

Компании, где спрашивали
I-teco

Ответ от нейросети

sobes.tech AI

В Go error — это встроенный интерфейс, который представляет ошибку как значение с методом Error() string. Обработка ошибок в Go основана на явной проверке возвращаемого значения ошибки после вызова функции. Вместо исключений используется паттерн, где функция возвращает результат и ошибку, и вызывающий код проверяет, не nil ли ошибка.

Пример обработки ошибки:

package main
import (
    "errors"
    "fmt"
)

func divide(a, b float64) (float64, error) {
    if b == 0 {
        return 0, errors.New("деление на ноль")
    }
    return a / b, nil
}

func main() {
    result, err := divide(10, 0)
    if err != nil {
        fmt.Println("Ошибка:", err)
        return
    }
    fmt.Println("Результат:", result)
}

Такой подход делает ошибки явными и позволяет гибко их обрабатывать.