Go в примери: Връщане на повече стойности

Go има вградена поддръжка за връщане на множество стойности от функция. Тази способност на езика често се използва в присъщия на Го стил, например за да се върне едновременно стойност и грешка.

package main
import "fmt"

Изявлението (int, int) в заглавието1 на тази функция указва, че функцията връща две цели числа.


  1. signature – буквално подпис; в случая – заглавие. Програминят код между фигурните скоби пък е тяло на функцията.
func vals() (int, int) {
    return 3, 7
}
func main() {

Тук ползваме двете различни върнати стойности чрез множестено присвояване.

    a, b := vals()
    fmt.Println(a)
    fmt.Println(b)

Ако искате само някои от върнатите стойности, използвайте празното име _ за тези, които не ви трябват.

    _, c := vals()
    fmt.Println(c)
}
$ go run multiple-return-values.go
3
7
7

Приемането на променлив брой податки е друго приятно свойство на функциите в Го, което ще разгледаме в следващия пример.

Следващ пример: .