इस लेख में हम C++ STL में काम करने, वाक्य रचना और map::at() और map::swap() फ़ंक्शंस के उदाहरणों पर चर्चा करेंगे।
C++ STL में मैप क्या है?
मानचित्र सहयोगी कंटेनर हैं, जो एक विशिष्ट क्रम में कुंजी मान और मैप किए गए मान के संयोजन से बने तत्वों को संग्रहीत करने की सुविधा प्रदान करते हैं। मैप कंटेनर में डेटा को हमेशा उसकी संबद्ध कुंजियों की मदद से आंतरिक रूप से सॉर्ट किया जाता है। मानचित्र कंटेनर के मानों को इसकी विशिष्ट कुंजियों द्वारा एक्सेस किया जाता है।
नक्शा क्या है::at()?
map::at() फंक्शन C++ STL में एक इनबिल्ट फंक्शन है, जिसे
यदि ऐसा कोई मामला है जब कुंजी मानचित्र कंटेनर की किसी भी कुंजी से मेल नहीं खा रही है, तो फ़ंक्शन एक out_of_range अपवाद फेंकता है।
सिंटैक्स
map_name.at(key& k);
पैरामीटर
फ़ंक्शन एक पैरामीटर यानी
. को स्वीकार करता है- k - यह वह कुंजी है जहां हम संदर्भित करना चाहते हैं।
रिटर्न वैल्यू
यह फ़ंक्शन कुंजी k से संबद्ध मान का संदर्भ देता है जिसे हम ढूंढ रहे हैं।
उदाहरण
इनपुट
std::map<int> mymap; mymap.insert({‘a’, 10}); mymap.insert({‘b, 20}); mymap.insert({‘c, 30}); mymap.at(‘b’);
आउटपुट
b:20
उदाहरण
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_1; map<int, int> TP_2; TP_1[1] = 10; TP_1[2] = 20; TP_1[3] = 30; TP_1[4] = 40; TP_2[5] = 50; TP_2[6] = 60; TP_2[7] = 70; cout<<"Elements at TP_1[1] = "<< TP_1.at(1) << endl; cout<<"Elements at TP_1[2] = "<< TP_1.at(2) << endl; cout<<"Elements at TP_1[3] = "<< TP_1.at(3) << endl; cout<<"\nElements at TP_2[7] = "<< TP_2.at(7) << endl; cout<<"Elements at TP_2[5] = "<< TP_2.at(5) << endl; return 0; }
आउटपुट
Elements at TP_1[1] = 10 Elements at TP_1[2] = 20 Elements at TP_1[3] = 30 Elements at TP_1[7] = 70 Elements at TP_1[5] = 50
नक्शा क्या है::स्वैप()?
map::swap() function C++ STL में एक इनबिल्ट फंक्शन है, जिसे
जब इस फ़ंक्शन को कॉल किया जाता है तो यह पैरामीटर लेता है जो एक अन्य मैप कंटेनर है और संबंधित कंटेनर के साथ सामग्री को स्वैप करता है।
सिंटैक्स
map_name.swap(map& map_name2);
पैरामीटर
फ़ंक्शन एक पैरामीटर यानी
. को स्वीकार करता है- map_name2 - यह अन्य मैप कंटेनर का ऑब्जेक्ट है जिसका डेटा हम संबंधित मैप कंटेनर से स्वैप करना चाहते हैं।
रिटर्न वैल्यू
यह फ़ंक्शन कुछ भी नहीं देता है।
उदाहरण
इनपुट
std::map<int> odd, eve; odd.insert({‘a’, 1}); odd.insert({‘b’, 3}); odd.insert({‘c’, 5}); eve.insert({‘d’, 2}); eve.insert({‘e’, 4}); eve.insert({‘f’, 6}); odd.swap(eve);
आउटपुट
Odd: d: 2 e:4 f:6 Eve: a:1 b:3 c:5
उदाहरण
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_1; map<int, int> TP_2; TP_1[1] = 10; TP_1[2] = 20; TP_1[3] = 30; TP_1[4] = 40; TP_2[5] = 50; TP_2[6] = 60; TP_2[7] = 70; swap(TP_1, TP_2); cout<<"Elements of TP_1 after swap:\n"<< "\tKEY\tELEMENT\n"; for (auto i = TP_1.begin(); i!= TP_1.end(); i++) { cout << "\t" << i->first << "\t" << i->second << '\n'; } cout << "Elements of TP_2 after swap:\n"<< "\tKEY\tELEMENT\n"; for (auto i = TP_2.begin(); i!= TP_2.end(); i++) { cout << "\t" << i->first << "\t" << i->second << '\n'; } return 0; }
आउटपुट
Elements of TP_1 after swap: KEY ELEMENT 5 50 6 60 7 70 Elements of TP_2 after swap: KEY ELEMENT 1 10 2 20 3 30 4 40