Junior — Middle
Jak se určuje velikost paměti zabrané slice v programovacím jazyce?
sobes.tech AI
Odpověď od AI
V jazyce Go je slice struktura, která obsahuje tři pole: ukazatel na pole, délku a kapacitu. Velikost slice v paměti je určena součtem velikostí těchto tří polí.
Obvykle zabírá velikost slice 24 bajtů na 64bitových systémech (8 bajtů na každé pole).
Důležité: samotný slice neobsahuje data, pouze odkaz na pole, kde jsou uloženy prvky. Velikost dat závisí na délce slice a velikosti typu prvků.
Příklad:
var s []int
// s zabírá pevnou velikost (24 bajtů),
// ale data, na která odkazuje, zabírají len(s)*sizeof(int) bajtů