Назад к вопросам
Junior — Middle
99
Как работает функция copy в языке Go и в каких случаях её использование оправдано?
Ответ от нейросети
sobes.tech AI
В Go функция copy используется для копирования элементов из одного среза (slice) в другой. Она имеет сигнатуру:
func copy(dst, src []Type) int
copy копирует минимум из длины dst и src элементов и возвращает количество скопированных элементов.
Использование оправдано, когда нужно создать копию среза или скопировать часть данных в другой срез, чтобы избежать изменения исходных данных при модификации нового среза.
Пример:
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
Это полезно для создания независимых копий срезов.