LINUX.ORG.RU

История изменений

Исправление tailgunner, (текущая версия) :

В том, что нельзя пропустить стадию проверки ошибки.

Так и в Go нельзя. Кроме как явно через _

Вечно забываю, что там запрещены неиспользуемые переменные. Но от ошибок это не страхует:

package main

import "fmt"
import "errors"

func f1(arg int) (int, error) {
    if arg == 42 {
	 return -1, errors.New("can't work with 42")
    }
    return arg + 3, nil
}

func main() {
	res, err := f1(42)
	if err != nil {
		fmt.Println(res);
	}
}

Исходная версия tailgunner, :

В том, что нельзя пропустить стадию проверки ошибки.

Так и в Go нельзя. Кроме как явно через _

Вечно забываю, что там запрещены неиспользуемые переменные. Но от ошибок это не страхует:

package main

import "fmt"
import "errors"

func f1(arg int) (int, error) {
    if arg == 42 {
	 return -1, errors.New("can't work with 42")
    }
    return arg + 3, nil
}

func main() {
	res, err := f1(42)
	res, err := f1(42)
	if err != nil {
		fmt.Println(res);
	}
}