এই লেখায় আমরা C++ STL-এ multimap::emplace() ফাংশনের কাজ করার পদ্ধতি, সিনট্যাক্স এবং উদাহরণ নিয়ে আলোচনা করব।
C++ STL-এ Multimap কী?
Multimap হল একটি অ্যাসোসিয়েটিভ কন্টেইনার যা ম্যাপ কন্টেইনারের মতো। এটি কী-ভ্যালু জোড়া হিসেবে উপাদান সংরক্ষণ করে নির্দিষ্ট ক্রমে। একটি মাল্টিম্যাপ কন্টেইনারে একই কী-এর সাথে একাধিক উপাদান থাকতে পারে। ডেটা অভ্যন্তরীণভাবে সংশ্লিষ্ট কী-هاর সাহায্যে সর্টেড থাকে।
multimap::emplace() কী?
multimap::emplace() হল C++ STL-এ একটি বিল্ট-ইন ফাংশন, যা <map> হেডার ফাইলে সংজ্ঞায়িত। emplace() মাল্টিম্যাপ কন্টেইনারে একটি নতুন উপাদান কনস্ট্রাক্ট করে ইনসার্ট করতে ব্যবহৃত হয়। এই ফাংশনটি কার্যকরভাবে কন্টেইনারের সাইজ ১ করে বাড়ায়।
এই ফাংশনটি insert ফাংশনের মতো যা অবজেক্ট কপি বা মুভ করে উপাদান ইনসার্ট করে।
সিনট্যাক্স
multimap_name.emplace(Args& val);
প্যারামিটার
- val — এটি वह উপাদান যা আমরা ইনসার্ট করতে চাই।
রিটার্ন ভ্যালু
এই ফাংশন একটি ইটেরেটর রিটার্ন করে যেখানে উপাদানটি emplaced/ইনসার্ট করা হয়েছে।
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
int main() {
// কন্টেইনার তৈরি
multimap<int, int> mul;
// emplace ব্যবহার করে ইনসার্ট
mul.emplace(1, 10);
mul.emplace(4, 20);
mul.emplace(5, 30);
mul.emplace(2, 40);
mul.emplace(3, 50);
mul.emplace(4, 60);
cout << "\nElements in multimap is: \n";
cout << "KEY\tELEMENT\n";
for (auto i = mul.begin(); i != mul.end(); i++) {
cout << i->first << "\t" << i->second << endl;
}
return 0;
}
আউটপুট
Elements in multimap is: KEY ELEMENT 1 10 2 40 3 50 4 20 4 60 5 30