المتجه:: emplace هو STL في C ++ الذي يوسع الحاوية عن طريق إدراج عنصر جديد في الموضع. تحدث إعادة التخصيص فقط إذا كانت هناك حاجة إلى مساحة أكبر. هنا يزيد حجم الحاوية بمقدار واحد.
ما هي وظيفة emplace المستخدمة؟
C ++ تعيين وظيفة emplace تستخدم لتوسيع الحاوية المحددة عن طريق إدراج عناصر جديدة في الحاوية. العناصر مبنية بشكل مباشر (لا يتم نسخها ولا نقلها). يتم استدعاء مُنشئ العنصر من خلال إعطاء الوسيطات التي تم تمريرها إلى هذه الوظيفة.
ماذا يفعل Vector emplace؟
vector:: emplace
إدراج عنصر جديد في الحاوية مباشرة قبل pos. يتم إنشاء العنصر من خلال std:: assignator_traits:: build ، والذي يستخدم عادةً placement-new لبناء العنصر في مكانه في الموقع الذي توفره الحاوية.
ما هو emplace في قائمة الانتظار؟
queue:: emplace هو يستخدم لإدراج أو وضع عنصر جديد في حاوية قائمة الانتظارنظرًا لأن وظيفة بنية قائمة الانتظار هي أن العنصر الذي تم إدراجه في نهاية الهيكل ، لاستدعاء emplace_back للإدراج الناجح للعنصر في نهاية حاوية الطابور.
ما هو الفرق بين emplace و push؟
بينما تقوم وظيفة الدفع بإدراج نسخة من القيمة أو المعلمة التي تم تمريرها إلى الوظيفة في الحاوية في الأعلى ، تقوم وظيفة emplace ببناء عنصر جديد كقيمة للمعامل ثم تضيفه إلى أعلى حاوية