Avatar ·

كيفية إضافة متجه إلى نهاية متجه آخر في C++ (append vector to vector)

مرحبًا! لقد بدأت للتو في تعلم C++ و STL. لدي متجهان (vectors)، وأريد إضافة جميع عناصر المتجه الثاني إلى نهاية الأول. جربت عدة طرق، لكن لا شيء يعمل كما توقعت. إليك الكود الخاص بي: ```cpp #include #include int main() { std::vector vec1 = {1, 2, 3}; std::vector vec2 = {4, 5, 6}; // أحاول إضافة vec2 إلى vec1 vec1.append(vec2); // خطأ: لا توجد دالة append // أحاول عبر insert vec1.insert(vec2.begin(), vec2.end()); // خطأ في الترجمة // أحاول عبر push_back في حلقة for (int i = 0; i < vec2.size(); i++) { vec1.push_back(vec2[i]); // يعمل، لكنه يبدو سيئًا } return 0; } ``` الخيار الأول لا يُترجم على الإطلاق، لأن std::vector لا يحتوي على دالة append. الخيار الثاني يعطي خطأ، لأن insert يتوقع iterator لموضع الإدراج، بينما أنا أمرر نطاقًا فقط. الخيار الثالث يعمل، لكني أعتقد أنه غير فعال.