Junior
Какви са разликите между бързото обявяване на променлива и обявяването чрез ключовата дума var?
sobes.tech AI
Отговор от AI
Бързото обявяване (:=) е възможно само вътре във функции и е съкратена форма на обявяване и инициализация. Ключовата дума var позволява обявяването на променливи от всякакъв тип, без инициализация (ще получат нулева стойност) или с инициализация, както и на ниво пакет.
Основните разлики:
| Характеристика | Бързо обявяване (:=) | Обявяване чрез var |
|---|---|---|
| Място на използване | Само вътре във функции | Вътре във функции и на ниво пакет |
| Необходимост от инициализация | Задължително, компилаторът извежда типа | Не е задължително, променливата ще получи нулева стойност |
| Множество обявявания | Възможно за няколко променливи | Възможно за няколко променливи |
| Повторно обявяване | Не, ако променливата вече съществува (само присвояване) | Да, но само с указване на типа |
| Явно указване на типа | Не, компилаторът извежда | Да, ако няма инициализация |
Пример за бързо обявяване:
// Инициализация и обявяване на променливата user
user := "Alice"
Пример за обявяване чрез var:
// Обявяване на променливата age без инициализация (ще получи стойност 0)
var age int
// Обявяване и инициализация на променливата city
var city string = "New York"
// Обявяване на няколко променливи
var (
x, y int = 1, 2
name string
)