Sobes.tech
Junior — Middle

Ako sa určuje veľkosť slice v pamäti v programovacom jazyku?

sobes.tech AI

Odpoveď od AI

V jazyku Go je slice štruktúra, ktorá obsahuje tri polia: ukazovateľ na pole, dĺžku a kapacitu. Veľkosť slice v pamäti je určená súčtom veľkostí týchto troch polí.

Obvykle, veľkosť slice zaberá 24 bajtov na 64-bitových systémoch (po 8 bajtov na každé pole).

Dôležité: samotný slice neobsahuje dáta, iba odkaz na pole, kde sú uložené prvky. Veľkosť dát závisí od dĺžky slice a veľkosti typu prvkov.

Príklad:

var s []int
// s zaberá pevný veľkosť (24 bajtov),
// ale dáta, na ktoré odkazuje, zaberajú len len(s)*sizeof(int) bajtov