Может ли функция Go проверять, сколько из ее возвращаемых значений потребляется? [Дубликат]

Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:

  1. Вызов метода экземпляра объекта null.
  2. Доступ или изменение поля объекта null.
  3. Принимая длину null, как если бы это был массив.
  4. Доступ или изменение слотов null, как если бы это был массив.
  5. Бросок null как будто это было значение Throwable.

Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null.

Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html

2
задан Artem Volkhin 2 August 2014 в 22:23
поделиться

1 ответ

Нет, это невозможно, единственная опция - вернуть указатель и проверить, нет ли он.

if v := f(10); v != nil {
     //stuff
}
1
ответ дан OneOfOne 19 August 2018 в 17:37
поделиться
  • 1
    Спасибо за ответ. После использования python немного неочевидно, что некоторые вещи можно использовать в стандартной библиотеке, но вы не можете делать это самостоятельно. – Artem Volkhin 2 August 2014 в 21:55
  • 2
    Есть очень мало вещей, которые вы не можете сделать в Go самостоятельно, может быть, в конце концов после того, как они завершат портирование. Идите к, ну, Go, они могут это позволить, но, вероятно, этого не произойдет раньше 1.6 или около того, если когда-либо. – OneOfOne 2 August 2014 в 22:00
Другие вопросы по тегам:

Похожие вопросы: