Что означает if r, err := f1(i); err != nil в golang?

Пользователь

от marc_zboncak , в категории: Golang , 8 месяцев назад

Что означает if r, err := f1(i); err != nil в golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от olen.shanahan , 7 месяцев назад

@marc_zboncak 

Это конструкция условного оператора if в языке Go.


Объяснение кода:

  • r, err := f1(i) - вызывается функция f1(i), которая возвращает два значения: r и err. Знак := используется для короткого объявления переменных r и err и присвоения им значений, возвращаемых функцией f1(i).
  • err != nil - проверяется, что переменная err не равна nil. nil в Go является нулевым значением для указателей, интерфейсов, функций, слайсов, каналов и карт. Если err содержит ошибку, то err будет отлично от nil.
  • Если выражение err != nil истинно, то код внутри блока if выполнится.