Назад к вопросам
Avito
Junior — Middle
89
Какие способы обработки ошибок ты знаком в языке Go?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В Go обработка ошибок обычно осуществляется через возвращаемое значение ошибки (error). Функции возвращают два значения: результат и ошибку. Если ошибка не nil, её нужно обработать. Такой подход позволяет явно контролировать ошибки.
Пример:
func divide(a, b float64) (float64, error) {
if b == 0 {
return 0, fmt.Errorf("деление на ноль")
}
return a / b, nil
}
result, err := divide(10, 0)
if err != nil {
fmt.Println("Ошибка:", err)
} else {
fmt.Println("Результат:", result)
}
Также в Go есть паники (panic) и восстановление (recover), но их используют для критических ошибок, а не для обычной обработки ошибок.
Иногда применяют кастомные типы ошибок для более детальной информации.