Junior
Jaké jsou rozdíly mezi rychlým deklarováním proměnné a deklarací pomocí klíčového slova var?
sobes.tech AI
Odpověď od AI
Rychlé oznámení (:=) je možné pouze uvnitř funkcí a je zkrácenou formou oznámení a inicializace. Klíčové slovo var umožňuje deklarovat proměnné libovolného typu, bez inicializace (obdrží nulovou hodnotu) nebo s inicializací, a také na úrovni balíčku.
Hlavní rozdíly:
| Charakteristika | Rychlé oznámení (:=) | Oznámení přes var |
|---|---|---|
| Místo použití | Pouze uvnitř funkcí | Uvnitř funkcí a na úrovni balíčku |
| Nutnost inicializace | Povinná, kompilátor odvodí typ | Nepovinná, proměnná dostane nulovou hodnotu |
| Vícenásobné oznámení | Možné pro více proměnných | Možné pro více proměnných |
| Opakované oznámení | Ne, pokud proměnná již existuje (pouze přiřazení) | Ano, ale pouze s určením typu |
| Explicitní určení typu | Ne, kompilátor odvodí | Ano, pokud není inicializace |
Příklad rychlého oznámení:
// Inicializace a oznámení proměnné user
user := "Alice"
Příklad oznámení přes var:
// Oznámení proměnné age bez inicializace (obdrží hodnotu 0)
var age int
// Oznámení a inicializace proměnné city
var city string = "New York"
// Oznámení více proměnných
var (
x, y int = 1, 2
name string
)