Junior — Middle
Ar galima atlikti duomenų skaitymo operaciją iš skilties, kuri nebuvo iš anksto inicializuota?
sobes.tech AI
Atsakymas iš AI
Go kalboje, skersiniai (slices) yra struktūros, kurios turi nuorodą į masyvą, ilgį ir talpą. Jei skersinis nėra inicializuotas (t.y., yra nil), bandymas jį skaityti sukels paniką.
Pavyzdžiui:
var s []int // nil-skersinis
fmt.Println(s[0]) // panika: vykdymo klaida: indeksas už diapazono ribų
Saugiai skaitant iš skersinio, jį reikia inicializuoti, pavyzdžiui, naudojant make arba priskiriant esamą masyvą:
s := make([]int, 3)
fmt.Println(s[0]) // 0, saugu
Todėl iš neinicijuoto skersinio skaityti negalima — tai sukels vykdymo klaidą.