Sobes.tech
Junior — Middle

Milyen beépített funkciók és műveletek megengedettek egy még nem inicializált szelethez?

sobes.tech MI

Válasz az MI-től

Go nyelvben egy nem inicializált (azaz nil) szelet a következő műveletekre használható:

  • Nil ellenőrzése: if slice == nil {}
  • Hossz és kapacitás lekérdezése: len(slice) és cap(slice) 0-t ad vissza
  • Elem hozzáadása append segítségével, például:
var s []int // nil-szelet
s = append(s, 1, 2, 3) // most a szelet inicializálva van és tartalmaz elemeket

Azonban nem lehet index szerint hozzáférni az elemekhez, például s[0], ha a szelet nil vagy üres — ez pánikot okoz.