إلحاق المتجهات بكفاءة
عند التعامل مع المتجهات، تتضمن المهمة الشائعة إلحاق متجه بآخر. في حين أن هناك طريقة مباشرة لتحقيق ذلك من خلال عمليات الإدراج المتكررة، إلا أنها ليست الطريقة الأكثر كفاءة.
للحصول على تسلسل فعال للمتجهات، توفر لغة C طريقة الإدراج. بافتراض أن لديك متجهين a وb، يمكنك إلحاق b بسلاسة بـ a كما يلي:
a.insert(a.end(), b.begin(), b.end());
يستخدم مقتطف التعليمات البرمجية هذا إدراج لإدراج النطاق الكامل للعناصر من b إلى a في الموضع المحدد بواسطة a.end().
بدلاً من ذلك، يمكنك استخدام C 11-متوافقة مع وظائف std::begin وstd::end لتحقيق نفس النتيجة:
a.insert(std::end(a), std::begin(b), std::end(b));
هذا المتغير أكثر عمومية ويمكن استخدامه مع المصفوفات وكذلك المتجهات.
لمزيد من المرونة، يمكنك استخدام ADL (البحث المعتمد على الوسيطة) مع الأنواع المعرفة من قبل المستخدم:
using std::begin, std::end; a.insert(end(a), begin(b), end(b));
باختصار، يوفر Insert طريقة فعالة ومريحة لإلحاق المتجهات في لغة C، مما يتيح لك العمل مع تسلسلات المتجهات الموسعة بكل سهولة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3