Junior — Middle
Ako funguje funkcia copy v jazyku Go a v akých prípadoch je jej použitie odôvodnené?
sobes.tech AI
Odpoveď od AI
V jazyku Go sa funkcia copy používa na kopírovanie prvkov z jedného rezu (slice) do druhého. Má nasledovnú podpis:
func copy(dst, src []Type) int
copy kopíruje minimálne dĺžku dst a src prvkov a vracia počet skopírovaných prvkov.
Použitie je odôvodnené, keď je potrebné vytvoriť kópiu rezu alebo skopírovať časť dát do iného rezu, aby nedošlo k zmene pôvodných dát pri úprave nového rezu.
Príklad:
src := []int{1, 2, 3, 4}
dst := make([]int, len(src))
count := copy(dst, src)
fmt.Println(dst) // [1 2 3 4]
fmt.Println(count) // 4
Toto je užitočné na vytvorenie nezávislých kópií rezov.