🟢 Лёгкий · 1 очк. Обработка ошибок
Как создать простую ошибку?
A new Error("msg")
B errors.New("msg")
C error("msg")
D throw "msg"
Объяснение вопроса

Через errors.New("сообщение") или fmt.Errorf("формат", ...). Оба возвращают значение, реализующее интерфейс error (метод Error() string).

Простая ошибка

var ErrNotFound = errors.New("not found")

func Get(id int) (*Item, error) {
    // ...
    return nil, ErrNotFound
}

С форматированием

return fmt.Errorf("user %d not found", id)

В Go нет throw или исключений - ошибки возвращаются как значения. Кастомный тип ошибки: структура с методом Error() string.

🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.