इस लेख में हम 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