এই নিবন্ধে আমরা C++ STL-এ মাল্টিম্যাপ::বিগিন() এবং মাল্টিম্যাপ::এন্ড() ফাংশনের কাজ, সিনট্যাক্স এবং উদাহরণ নিয়ে আলোচনা করব।
C++ STL-এ মাল্টিম্যাপ কী?
মাল্টিম্যাপ হল অ্যাসোসিয়েটিভ কন্টেইনার, যা ম্যাপ কন্টেইনারের মতো। এটি একটি নির্দিষ্ট ক্রমে কী-মান এবং ম্যাপ করা মানের সংমিশ্রণ দ্বারা গঠিত উপাদানগুলিকে সংরক্ষণ করার সুবিধা দেয়৷ একটি মাল্টিম্যাপ পাত্রে, একই কী-এর সাথে যুক্ত একাধিক উপাদান থাকতে পারে। ডেটা সর্বদা অভ্যন্তরীণভাবে তার সম্পর্কিত কীগুলির সাহায্যে সাজানো হয়৷
মাল্টিম্যাপ::বেগিন() কি?
multimap::begin() ফাংশন হল C++ STL-এ একটি অন্তর্নির্মিত ফাংশন, যা
এই ফাংশনটি একটি পুনরাবৃত্তিকারী প্রদান করে যা ধারকটির প্রথম উপাদানটিকে নির্দেশ করে। যখন ধারকটির কোন মান থাকে না তখন পুনরাবৃত্তিকারীকে সম্মান করা যায় না
সিনট্যাক্স
multimap_name.begin();
প্যারামিটার
ফাংশন কোনো প্যারামিটার গ্রহণ করে না।
রিটার্ন মান
এই ফাংশনটি একটি পুনরাবৃত্তিকারী প্রদান করে যা মানচিত্র ধারকের প্রথম মান নির্দেশ করে।
ইনপুট
std::multimap<int> mymap;
mymap.insert({‘a’, 10});
mymap.insert({‘b’, 20});
mymap.insert({‘c’, 30});
mymap.begin(); আউটপুট
a:10
উদাহরণ
মাল্টিম্যাপ::বেগিন()
#include <bits/stdc++.h>
using namespace std;
int main(){
multimap<int, int> mul;
//inserting elements in multimap
mul.insert({ 1, 10 });
mul.insert({ 2, 20 });
mul.insert({ 3, 30 });
mul.insert({ 4, 40 });
mul.insert({ 5, 50 });
//fetching first pair in multimap
auto i = mul.begin();
cout<<"First element in multimap is: ";
cout << "{" << i->first << ", " << i->second << "}\n";
//displaying multimap elements
cout << "\nElements in multimap is : \n";
cout << "KEY\tELEMENT\n";
for (auto it = mul.begin(); it!= mul.end(); ++it){
cout << it->first << '\t' << it->second << '\n';
}
return 0;
} আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে -
First element in multimap is: {1, 10}
Elements in multimap is :
KEY ELEMENT
1 10
2 20
3 30
4 40
5 50 মাল্টিম্যাপ কি::এন্ড()?
multimap::end() ফাংশন হল C++ STL-এ একটি অন্তর্নির্মিত ফাংশন, যা
এই ফাংশনটি একটি পুনরাবৃত্তিকারী প্রদান করে যা ধারকটির শেষ উপাদানটির পাশে থাকা উপাদানটির দিকে নির্দেশ করে। যখন কন্টেইনারের কোনো মান থাকে না তখন ইটারেটরকে ডিরেফারেন্স করা যায় না
সাধারণত start() এবং end() ম্যাপ কন্টেইনার দিয়ে তাদের পরিসীমা দিয়ে পুনরাবৃত্তি করতে ব্যবহৃত হয়।
সিনট্যাক্স
multimap_name.end();
প্যারামিটার
ফাংশন কোনো প্যারামিটার গ্রহণ করে না।
রিটার্ন মান
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেইনপুট
std::multimap<int> mymap;
mymap.insert({‘a’, 10});
mymap.insert({‘b’, 20});
mymap.insert({‘c’, 30});
mymap.end(); আউটপুট
error
উদাহরণ
মাল্টিম্যাপ::end()
#include <bits/stdc++.h>
using namespace std;
int main(){
multimap<int, int> mul;
//inserting elements in multimap
mul.insert({ 1, 10 });
mul.insert({ 2, 20 });
mul.insert({ 3, 30 });
mul.insert({ 4, 40 });
mul.insert({ 5, 50 });
//displaying multimap elements
cout << "\nElemenst in multimap is : \n";
cout << "KEY\tELEMENT\n";
for (auto it = mul.begin(); it!= mul.end(); ++it){
cout << it->first << '\t' << it->second << '\n';
}
return 0;
} আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেElements in multimap is : KEY ELEMENT 1 10 2 20 3 30 4 40 5 50