English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
این توابع برای اضافه کردن عنصر جدید به انتهای vector (vector) و افزایش اندازه جعبههای vector استفاده میشود.
قوانین استفاده از vector (vector) ‘v’ است:
v.emplace_back(args);
argsپارامترهایی که برای ساخت عنصر جدید استفاده میشوند را انتقال میدهد.
هیچ مقدار بازگشتی ندارد.
دعونا مثال سادهای را بررسی کنیم.
#include <iostream> #include<vector> using namespace std; int main() { vector<char> v{'C','+'}; v.emplace_back('+'); for (int i = 0; i < v.size(); i++) { cout<<v[i]; } return 0; }
الإخراج:
C++
در این مثال، از طریق استفاده از توابع emplace_back() برای اضافه کردن مقادیر جدید به انتهای vector (vector) 'v'، اندازه vector (vector) 'v' افزایش مییابد.
توابع insert() برای کپی کردن اشیاء به داخل جعبههای vector استفاده میشود، در حالی که توابع emplace() فقط برای ساخت اشیاء در داخل جعبههای vector استفاده میشود، که از عملیات غیرضروری جلوگیری میکند.
تفسیر ساده، این است که emplace() در هنگام وارد کردن عنصر، در مکان مشخص شده درون جعبه مستقیماً عنصر را میسازد، نه اینکه ابتدا به صورت جداگانه تولید کند و سپس آن را به جعبه (کپی یا انتقال) کند. بنابراین، در استفاده واقعی، توصیه میشود که ابتدا از emplace() استفاده کنید.
دعونا مثال ساده دیگری را بررسی کنیم.
#include <iostream> #include<vector> using namespace std; int main() { vector<int> v{1,2,3,4,5}; v.emplace_back(6); for (int i = 0; i < v.size(); i++) { cout << v[i] << " "; } return 0; }
الإخراج:
1 2 3 4 5 6
في هذا المثال، يتم استخدام وظيفة emplace_back() لضمان قيمة جديدة في نهاية المجموعة (بعد آخر عنصر)