cpp

Сокращенный формат объявления переменных

Существует также сокращенный формат объявления локальных переменных:

<Переменная 1>[, ..., <Переменная N>] := <Значение 1>[,
                                          ..., <Значение N>]

Тип данных переменных в этом случае определяется компилятором автоматически по контексту при инициализации. Пример объявления одной целочисленной переменной:

x := 10
fmt.Printf("%T\n", x) // int
fmt.Println(x)        // 10

Пример объявления сразу двух переменных:

x, y := 10, 20.5
fmt.Printf("%T\n", x) // int
fmt.Printf("%T\n", y) // float64

При объявлении сразу нескольких переменных допускается указание ранее объявленных переменных. В этом случае оператор := будет работать как оператор присваивания. Важно, чтобы хотя бы одна любая переменная была новой. Если все переменные были объявлены ранее, то возникнет ошибка. Пример:

x, y := 10, 20.5
fmt.Println(x, y)    // 10 20.5
// z - новая переменная, x и y объявлены ранее
z, x, y := 1, 2, 3
fmt.Println(z, x, y) // 1 2 3
Обратите внимание

Учебник Go (Golang)
Учебник Go (Golang) в формате PDF