Senior
Da li možemo na petom redu, gde se dešava fmt.Println(v), pristupiti jedinici (elementu dodatom putem append unutar fill-a) i je prikazati?
sobes.tech АИ
Одговор од АИ
U Go, ako unutar funkcije fill dodate element u rez putem append, taj element će postojati u rezu nakon poziva fill ako je rez prosleđen po referenci ili je vraćen.
Primer:
package main
import "fmt"
func fill(s []int) []int {
s = append(s, 1) // dodavanje elementa
return s
}
func main() {
var v []int
v = fill(v)
fmt.Println(v) // ovde će biti prikazano [1]
}
Ako je rez prosleđen u fill po vrednosti i nije vraćen, izmene se neće sačuvati. Zato, da biste pristupili dodatom elementu na petom redu, morate ili vratiti rez iz fill ili proslediti pokazivač na rez.
Na ovaj način, na petom redu, fmt.Println(v), možete prikazati dodatnu jedinicu ako pravilno organizujete prosleđivanje i vraćanje reza.