এই নিবন্ধে আমরা C++ STL-এ মাল্টিম্যাপ::ইরেজ() ফাংশনের কাজ, সিনট্যাক্স এবং উদাহরণ নিয়ে আলোচনা করব।
C++ STL-এ মাল্টিম্যাপ কী?
মাল্টিম্যাপ হল অ্যাসোসিয়েটিভ কন্টেইনার, যা ম্যাপ কন্টেইনারের মতো। এটি একটি নির্দিষ্ট ক্রমে কী-মান এবং ম্যাপ করা মানের সংমিশ্রণ দ্বারা গঠিত উপাদানগুলিকে সংরক্ষণ করার সুবিধা দেয়৷ একটি মাল্টিম্যাপ পাত্রে, একই কী-এর সাথে যুক্ত একাধিক উপাদান থাকতে পারে। ডেটা সর্বদা অভ্যন্তরীণভাবে তার সম্পর্কিত কীগুলির সাহায্যে সাজানো হয়৷
মাল্টিম্যাপ::ইরেজ() কি?
multimap::erase() ফাংশন হল C++ STL-এ একটি অন্তর্নির্মিত ফাংশন, যা
এই ফাংশনটি তার কী, অবস্থান বা প্রদত্ত পরিসর দ্বারা উপাদানগুলিকে সরাতে বা মুছে ফেলতে পারে। যখন আমরা এই ফাংশনটি চালাই তখন মাল্টিম্যাপ কন্টেইনারের আকার সরানো উপাদানগুলির সংখ্যা দ্বারা হ্রাস পায়৷
সিনট্যাক্স
multimap_name.erase(key_type key); multimap_name.erase(const_iterator it); multimap_name.erase(const_ iterator start, const_itertaor end);
পরামিতি
ফাংশন নিম্নলিখিত পরামিতি(গুলি) −
গ্রহণ করে-
কী − এটি সেই কীটির অবস্থান যার উপাদানগুলিকে আমরা সরাতে চাই৷
৷ -
এটি − পুনরাবৃত্তিকারী অবস্থান যেখান থেকে আমরা উপাদানগুলি সরাতে চাই৷
৷ -
শুরু, শেষ − এটি কোন অবস্থান থেকে কোন অবস্থান পর্যন্ত উপাদানগুলির সেটটি সরানো উচিত তা নির্ধারণ করে৷
রিটার্ন মান
এই ফাংশনটি সংশ্লিষ্ট ধারক থেকে সরানো উপাদানগুলির সংখ্যা প্রদান করে৷
ইনপুট
std::multimap<int> mymap; mymap.insert({‘a’, 10}); mymap.insert({‘b’, 20}); mymap.insert({‘c’, 30}); mymap.erase(‘b’);
আউটপুট
a:10 c:30
উদাহরণ
//প্রদত্ত কী মুছে দিন
#include<iostream> #include<map> using namespace std; int main(){ multimap<int,char > mul_1; //declaring iterator to traverse the elements multimap<int,char>:: iterator i; //inserting elements to multimap1 mul_1.insert(make_pair(0,'a')); mul_1.insert(make_pair(1,'b')); mul_1.insert(make_pair(2,'c')); mul_1.insert(make_pair(3,'d')); mul_1.insert(make_pair(4,'e')); mul_1.insert(make_pair(5,'f')); mul_1.insert(make_pair(6,'g')); //calling erase() to delete the element mul_1.erase(1); mul_1.erase(4); mul_1.erase(6); mul_1.erase(5); //elements of multimap1 cout<<"Elements in multimap1 are: "<<"\n"; for( i = mul_1.begin(); i!= mul_1.end(); i++){ cout<<(*i).first<<" "<< (*i).second << "\n"; } }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেElements in multimap1 are: 0 a 2 c 3 d
উদাহরণ
//একটি প্রদত্ত পরিসরের মধ্যে উপাদান মুছে ফেলা হচ্ছে
#include<iostream> #include<map> using namespace std; int main(){ multimap<int,char > mul_1; //declaring iterator to traverse the elements multimap<int,char>:: iterator i; //inserting elements to multimap1 mul_1.insert(make_pair(0,'a')); mul_1.insert(make_pair(1,'b')); mul_1.insert(make_pair(2,'c')); mul_1.insert(make_pair(3,'d')); mul_1.insert(make_pair(4,'e')); mul_1.insert(make_pair(5,'f')); mul_1.insert(make_pair(6,'g')); //elements in multimap before erasing cout<<"Elements in multimap1 are: "<<"\n"; for( i = mul_1.begin(); i!= mul_1.end(); i++){ cout<<(*i).first<<" "<< (*i).second << "\n"; } //calling erase() to delete the element auto start = mul_1.find(3); auto end = mul_1.find(6); mul_1.erase(start, end); //elements of multimap1 after erasing cout<<"Elements in multimap1 are: "<<"\n"; for( i = mul_1.begin(); i!= mul_1.end(); i++){ cout<<(*i).first<<" "<< (*i).second << "\n"; } }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেElements in multimap1 are: 0 a 1 b 2 c 3 d 4 e 5 f 6 g Elements in multimap1 are: 0 a 1 b 2 c 6 g
উদাহরণ
//প্রদত্ত অবস্থানে উপাদান মুছে ফেলা হচ্ছে
#include<iostream> #include<map> using namespace std; int main(){ multimap<int,char > mul_1; //declaring iterator to traverse the elements multimap<int,char>:: iterator i; //inserting elements to multimap1 mul_1.insert(make_pair(0,'a')); mul_1.insert(make_pair(1,'b')); mul_1.insert(make_pair(2,'c')); mul_1.insert(make_pair(3,'d')); mul_1.insert(make_pair(4,'e')); mul_1.insert(make_pair(5,'f')); mul_1.insert(make_pair(6,'g')); //elements in multimap before erasing cout<<"Elements in multimap1 are: "<<"\n"; for( i = mul_1.begin(); i!= mul_1.end(); i++){ cout<<(*i).first<<" "<< (*i).second << "\n"; } //calling erase() to delete the element auto first = mul_1.find(1); mul_1.erase(first); auto second = mul_1.find(6); mul_1.erase(second); auto third = mul_1.find(2); mul_1.erase(third); //elements of multimap1 after erasing cout<<"Elements in multimap1 are: "<<"\n"; for( i = mul_1.begin(); i!= mul_1.end(); i++){ cout<<(*i).first<<" "<< (*i).second << "\n"; } }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেElements in multimap1 are: 0 a 1 b 2 c 3 d 4 e 5 f 6 g Elements in multimap1 are: 0 a 3 d 4 e 5 f