Avatar ·

¿Cómo unir dos slices en Go? Concatenación de slices

¡Hola! Acabo de empezar a aprender Go y me encontré con un problema. Necesito unir dos slices en uno. En Python simplemente escribiría `list1 + list2`, pero en Go, según tengo entendido, no existe tal operación. Tengo dos slices de enteros: ```go slice1 := []int{1, 2, 3} slice2 := []int{4, 5, 6} ``` Quiero obtener el resultado: `[1 2 3 4 5 6]`. Intenté usar el operador `+`, pero el compilador da un error: `invalid operation: slice1 + slice2 (operator + not defined on slice)`. Luego me topé con la función `append`, pero agrega elementos uno por uno. ¿Escribir un bucle para cada elemento no es ineficiente? ¿Quizás hay alguna forma incorporada o una solución idiomática en Go? Y otra pregunta: si uso `append`, ¿afectará esto a los slices originales? ¿El nuevo slice será una copia independiente? Indíquenme cómo unir slices correctamente en Go y qué sucede con la memoria. ¡Gracias de antemano! <<>>

Uso de append con desempaquetado (variadic)