Junior — Middle
U kom delu memorije se nalazi niz podataka tokom izvršavanja programa?
sobes.tech АИ
Одговор од АИ
U Go, nizovi se mogu nalaziti u različitim oblastima memorije u zavisnosti od konteksta:
- Ako je niz deklarisan kao lokalna promenljiva unutar funkcije i ne prelazi svoje granice, obično se nalazi na steku.
- Ako se niz dinamički kreira (na primer, pomoću
newili segmenta koji referencira niz), nalazi se na hrpi.
Važno je razumeti da su segmenti u Go strukture koje sadrže pokazivač na niz, dužinu i kapacitet. Sam niz može biti na hrpi ili na steku, u zavisnosti od mesta gde je kreiran i kako se koristi.
Primer:
func primer() {
var arr [5]int // nalazi se na steku
slice := make([]int, 5) // niz na hrpi
_ = arr
_ = slice
}