Avatar ·

Concatenación de dos std::vector en C++: ¿cómo unir vectores?

¡Hola a todos! Soy nuevo en C++ y me encontré con una tarea aparentemente simple: necesito unir dos std::vector en uno. Supongamos que tengo dos vectores de enteros: ```cpp #include std::vector vec1 = {1, 2, 3}; std::vector vec2 = {4, 5, 6}; ``` Quiero obtener un tercer vector `vec3` que contenga los elementos de ambos: `{1, 2, 3, 4, 5, 6}`. En Python simplemente escribiría `vec3 = vec1 + vec2`, pero en C++ el operador `+` no está sobrecargado para vectores. Intenté hacer esto: ```cpp std::vector vec3 = vec1 + vec2; // Error de compilación ``` Y obtuve un error. Luego pensé en usar un bucle `for`, pero parece demasiado engorroso e ineficiente. En internet vi menciones de `std::merge`, `std::copy` e `insert`, pero me confundí sobre cuál elegir. Necesito una solución simple y eficiente. Preferiblemente, que los vectores originales permanezcan sin cambios. ¿Podrían indicarme cómo unir correctamente dos vectores en C++? ¿Qué método se considera la mejor práctica?