История изменений
Исправление vbr, (текущая версия) :
зачем тогда объявлять символ err?
Потому, что синтаксис a := operationA() в Go уже имеет конкретное значение «игнорировать значение err» и поменять его практически невозможно.
Можешь переписать, как a := try! operationA() или в любом другом виде. Мне больше нравится мой вариант, т.к. с одной стороны он вполне понятно читается, а с другой стороны однозначно парсится. Ну а то, что переменная будет всегда иметь значение nil - ну и ладно.
Дополню, что хотя есть общепринятые способы возвращать ошибку одним последним значением, это не значит, что все обязаны этому способу следовать. Плюс - может быть не только err но и логическая ok, например. Мой вариант универсально расширяется до любых сигнатур возвращаемых значений. К примеру !ok, len := someStrangeRead().
Исправление vbr, :
зачем тогда объявлять символ err?
Потому, что синтаксис a := operationA() в Go уже имеет конкретное значение «игнорировать значение err» и поменять его практически невозможно.
Можешь переписать, как a := try! operationA() или в любом другом виде. Мне больше нравится мой вариант, т.к. с одной стороны он вполне понятно читается, а с другой стороны однозначно парсится. Ну а то, что переменная будет всегда иметь значение nil - ну и ладно.
Дополню, что хотя есть общепринятые способы возвращать ошибку одним последним значением, это не значит, что все обязаны этому способу следовать. Плюс - может быть не только err но и логическая ok, например. Мой вариант универсально расширяется до любых сигнатур возвращаемых значений.
Исходная версия vbr, :
зачем тогда объявлять символ err?
Потому, что синтаксис a := operationA() в Go уже имеет конкретное значение «игнорировать значение err» и поменять его практически невозможно.
Можешь переписать, как a := try! operationA() или в любом другом виде. Мне больше нравится мой вариант, т.к. с одной стороны он вполне понятно читается, а с другой стороны однозначно парсится. Ну а то, что переменная будет всегда иметь значение nil - ну и ладно.