... > GO > Возвращаемые значения функций...

Возвращаемые значения функций в GO

НАВИГАЦИЯ ПО СТРАНИЦЕ

Одиночное возвращаемое Множественные возвращаемые Именованные возвращаемые Возврат нескольких значений

В GO функции могут возвращать одно или несколько значений. Поэтому давайте рассмотрим основные аспекты возвращаемых значений в функциях.

Одиночное возвращаемое значение

Функция может вернуть одно значение с использованием ключевого слова return.

func add(a, b int) int {
    return a + b
}

В этом примере функция add возвращает сумму двух целых чисел.

Множественные возвращаемые значения

GO позволяет функциям возвращать несколько значений.

Например:

func divide(dividend, divisor float64) (float64, error) {
    if divisor == 0 {
        return 0, errors.New("division by zero")
    }
    result := dividend / divisor
    return result, nil
}

В данном примере функция divide возвращает результат деления и ошибку. Типы возвращаемых значений перечислены в скобках.

Именованные возвращаемые значения

GO также поддерживает именованные возвращаемые значения, что делает код более читаемым.

Например:

func divide(dividend, divisor float64) (result float64, err error) {
    if divisor == 0 {
        err = errors.New("division by zero")
        return
    }
    result = dividend / divisor
    return
}

В этом примере result и err — это именованные возвращаемые значения.

Возврат нескольких значений из функции

Функция может возвращать несколько значений, и эти значения могут быть присвоены нескольким переменным при вызове функции.

func compute(a, b int) (int, int) {
    sum := a + b
    difference := a - b
    return sum, difference
}

При вызове этой функции можно принять оба возвращаемых значения:

total, diff := compute(10, 5)

Такой подход часто используется для возвращения результатов и ошибок из функций.

Это основные аспекты возвращаемых значений функций в GO. Используйте их в зависимости от требований вашей программы, чтобы код был более гибким и поддерживаемым.