tgoop.com/go_interview_lib/375
Create:
Last Update:
Last Update:
💬 Что произойдет, если в type switch использовать временную переменную для типа nil? Какой тип будет у этой переменной?
Когда в type switch используется временная переменная для типа nil, тип этой переменной будет таким же, как и тип исходного значения, которое мы проверяем в TypeSwitchGuard. Например, если исходное значение имеет тип any, временная переменная также будет иметь тип any. Это можно проиллюстрировать следующим примером:
var x any
var y error
switch t := x.(type) {
case nil:
y = t // Ошибка компиляции: any does not implement error
}
В этом примере код не компилируется с ошибкой, указывающей, что переменная типа any не может быть присвоена переменной типа error, так как тип any не реализует метод Error. Это подтверждает, что временная переменная t в случае nil имеет тот же тип, что и x (в данном случае any).
BY Библиотека Go для собеса | вопросы с собеседований
Share with your friend now:
tgoop.com/go_interview_lib/375