Junior — Middle
Čo znamená nulová hodnota pre rez v programovacom jazyku?
sobes.tech AI
Odpoveď od AI
V jazyku Go je rez (slice) dynamický poľ, ktorý obsahuje odkaz na pole, dĺžku a kapacitu.
Nulová hodnota rezu je nil. Takýto rez neukazuje na žiadne pole, jeho dĺžka a kapacita sú nulové.
Vlastnosti nulového rezu:
- Môže byť overený pomocou
slice == nil. - Pokus o prístup k jeho prvkom povedie k panike.
- Môže byť použitý ako prázdny rez, napríklad na označenie absencie dát.
Príklad:
var s []int // s == nil
fmt.Println(s == nil) // true
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 0
// Bezpečne možno inicializovať prázdny rez:
s = []int{}
fmt.Println(s == nil) // false
fmt.Println(len(s)) // 0
Takže, nulová hodnota rezu je nil, čo sa líši od prázdneho rezu, ale nie od nil rezu.