English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
هي وظيفة جديدة مضافة إلى معيار C++ 11، تستخدم لضمان إدراج عنصر جديد قبل موقع معين في حاوية فيكتور.
ملاحظة: يمكن استخدام دالة emplace() ل插入 عنصر واحد فقط في كل مرة، وليس عدة عناصر.
النحو لـ (vector) v. النحو هو:
Iterator it=v.emplace(pos,args);
الموقع:يحدد الموقع الذي سيتم فيه إدراج العنصر الجديد.
المعلمات:تم تمرير المعلمات المستخدمة لإنشاء العنصر الجديد.
ستقوم بإعادة التوجيه إلى العنصر المضاف حديثاً.
لنرى مثالاً بسيطاً.
#include <iostream> #include<vector> using namespace std; int main() {} vector<int> v{1,2,3,4,5}; cout<<"عناصر فيكتور v هي: "; for(int i=0; i<v.size(); i++) cout<<v[i]<<" "; cout<<'\n'; cout<<"بعد إضافة العناصر الاثنتين، العناصر هي: "; vector<int>::iterator it=v.emplace(v.begin()+2,8); v.emplace(it,9); for(int i=0; i<v.size(); i++) cout<<v[i]<<" "; return 0; {}
الإخراج:
عناصر فيكتور v هي: 1 2 3 4 5 بعد إضافة العناصر الاثنتين، العناصر هي: 1 2 9 8 3 4 5
في هذا المثال، تم زيادة حجم حاوية فيектор باستخدام دالة emplace().
لنرى مثالاً بسيطاً آخر.
#include <iostream> #include<vector> using namespace std; int main() {} vector<string> v{"mango","apple","banana"}; v.emplace(v.begin()+2, "strawberry"); for(int i=0; i<v.size(); i++) std::cout << v[i] << " "; return 0; {}
الإخراج:
Mango apple strawberry banana
في هذا المثال، يتم زيادة حجم حاوية vector (العدادات) عن طريق إضافة نص جديد باستخدام وظيفة emplace().