-
Автор темы
- #1
Функции
Функции способны принимать от 0 до бесконечности агрументов, в примере ниже функция sum принимает 2 агрумента целочисленного типа.
Если несколько аргументов функции имеют одинаковый тип, можно немного сократить код:
Множественный возврат
Функции так же могут возвращать несколько результатов, ниже вы можете увидеть пример
Именнованный возврат
Возвращаемые значения Go могут быть именованными. В этом случае они рассматриваются как переменные, определенные в верхней части функции.
Эти имена следует использовать для документирования значения возвращаемых значений.
Оператор return без аргументов возвращает именованные возвращаемые значения. Это называется "голым" возвратом.
Функции способны принимать от 0 до бесконечности агрументов, в примере ниже функция sum принимает 2 агрумента целочисленного типа.
Код:
// Структура функции:
func sum(x int, y int) int { // после описания функции и ее агрументов указывается тип возвращаемого значения.
return x + y
}
func main() {
fmt.Println(sum(2, 2)) // Выведет в консоль 4
}
Код:
func sum(x int, y int) int {
превращается в
func sum(x, y int) int {
Функции так же могут возвращать несколько результатов, ниже вы можете увидеть пример
Код:
func swap(x, y string) (string, string) {
return y, x
}
func main() {
a, b := swap("hello", "world")
fmt.Println(a, b)
}
Код:
func split(sum int) (x, y int) {
x = sum * 4 / 9
y = sum - x
return
}
func main() {
fmt.Println(split(17))
}
Эти имена следует использовать для документирования значения возвращаемых значений.
Оператор return без аргументов возвращает именованные возвращаемые значения. Это называется "голым" возвратом.