Junior — Middle
Come funziona la funzione copy nel linguaggio Go e in quali casi è giustificato il suo utilizzo?
sobes.tech AI
Risposta dell'AI
In Go, la funzione copy viene utilizzata per copiare gli elementi da un slice a un altro. Ha la seguente firma:
func copy(dst, src []Type) int
copy copia almeno la lunghezza di dst e src elementi e restituisce il numero di elementi copiati.
L'uso è giustificato quando si desidera creare una copia di un slice o copiare parte dei dati in un altro slice, per evitare di modificare i dati originali durante la modifica del nuovo slice.
Esempio:
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
Questo è utile per creare copie indipendenti di slice.