Avatar ·

Concaténation de deux std::vector en C++ : comment fusionner des vecteurs ?

Bonjour à tous ! Je suis débutant en C++ et j'ai rencontré une tâche apparemment simple : je dois fusionner deux std::vector en un seul. Supposons que j'ai deux vecteurs d'entiers : ```cpp #include std::vector vec1 = {1, 2, 3}; std::vector vec2 = {4, 5, 6}; ``` Je veux obtenir un troisième vecteur `vec3` qui contiendrait les éléments des deux : `{1, 2, 3, 4, 5, 6}`. En Python, j'écrirais simplement `vec3 = vec1 + vec2`, mais en C++ l'opérateur `+` n'est pas surchargé pour les vecteurs. J'ai essayé de faire ceci : ```cpp std::vector vec3 = vec1 + vec2; // Erreur de compilation ``` Et j'ai obtenu une erreur. Ensuite, j'ai pensé à utiliser une boucle `for`, mais cela semble trop lourd et inefficace. Sur Internet, j'ai vu des mentions de `std::merge`, `std::copy` et `insert`, mais je suis confus quant au meilleur choix. J'ai besoin d'une solution simple et efficace. De préférence, les vecteurs d'origine doivent rester inchangés. Dites-moi comment fusionner correctement deux vecteurs en C++ ? Quelle méthode est considérée comme la meilleure pratique ?