Nil-интерфейс в Go: почему err == nil выдаёт false?
Nil-интерфейс в Go ломает даже опытных разработчиков: функция возвращает nil-указатель *E, а проверка err == nil всё равно даёт false. Причина в том, что интерфейс хранит пару из типа и значения, и пока тип *E на месте, интерфейс не считается пустым. Хочешь вернуть «нет ошибки», возвращай nil явно.
youtube.com/shorts/6LK-o-BSjHA?feature=share
Post #939
437