Sobes.tech
Junior — Middle

Como funciona a função copy na linguagem Go e em que casos o seu uso é justificado?

sobes.tech IA

Resposta da IA

No Go, a função copy é usada para copiar elementos de um slice para outro. Ela tem a seguinte assinatura:

func copy(dst, src []Type) int

A função copy copia pelo menos o comprimento de dst e src elementos e retorna a quantidade de elementos copiados.

Seu uso é justificado quando é necessário criar uma cópia do slice ou copiar parte dos dados para outro slice, para evitar modificar os dados originais ao modificar o novo slice.

Exemplo:

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

Isso é útil para criar cópias independentes de slices.