«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Перейти ":=" против "=": когда использовать короткие объявления переменных?

Перейти ":=" против "=": когда использовать короткие объявления переменных?

Опубликовано 22 декабря 2024 г.
Просматривать:772

Go

Понимание разницы между ":=" и "=" в Go

Как новичок в Go, вы можете быть озадачены казалось бы взаимозаменяемое использование ":=" и "=" для назначения переменных. Однако есть небольшая разница, которая связана с контекстом объявления переменных.

Роль "="

В Go "=" в основном используется для присвоения переменных. Он соответствует синтаксису «имя var тип = выражение», где «имя» представляет назначаемую переменную. Важно отметить, что тип или выражение присваивания можно опустить, но не то и другое.

Природа ":="

Напротив, ":=" обозначает краткое объявление переменной в формате «имя := выражение». Здесь «:=" действует как объединенный оператор объявления и присваивания. Тип «имени» автоматически выводится из типа «выражения».

Различие между объявлением и присваиванием

Ключевое различие заключается в основной цели каждого оператор. ":=" предназначен исключительно для объявления, тогда как "=" используется для присвоения. Следовательно, короткие объявления переменных обязательно должны вводить по крайней мере одну совершенно новую переменную в текущем лексическом блоке.

Примеры использования

Чтобы проиллюстрировать это различие, рассмотрим следующие примеры. :

  1.   var x int = 1

    Этот оператор объявляет целочисленную переменную "x" и инициализирует его значением 1.

  2.   r := foo()

    Это короткое объявление переменной, которое присваивает возвращаемое значение "foo ()» к вновь созданной переменной «r».

This creates a new variable "m" and assigns a new value to the existing variable "r."

**Exceptions and Additional Information**

It's worth noting that ":=" can only be used within functions. However, it can declare temporary variables within the initializers of control structures like "if," "for," and "switch."

For further exploration, you can refer to the official Go documentation on:

* [Variable Declarations](https://go.dev/ref/spec#Variable_declarations)
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3