मैप एक सहयोगी कंटेनर है जो तत्वों को मैप्ड तरीके से संग्रहीत करता है। प्रत्येक तत्व का एक कुंजी मान और एक मैप्ड मान होता है। दो मैप्ड मानों में समान कुंजी मान नहीं हो सकते।
उपयोग किए गए फंक्शन:
- m::find() – यदि मैप में key 'b' वाला तत्व मिलता है तो उसका इटरेटर लौटाता है, अन्यथा end इटरेटर लौटाता है।
- m::erase() – मैप से कुंजी मान को हटाता है।
- m::equal_range() – जोड़ों का एक इटरेटर लौटाता है। यह जोड़ा उन सभी तत्वों की सीमा को संदर्भित करता है जिनका key दिए गए key के बराबर है।
- m::insert() – मैप कंटेनर में तत्व डालने के लिए।
- m::size() – मैप कंटेनर में तत्वों की संख्या लौटाता है।
- m::count() – मैप में key 'a' या 'f' वाले तत्व से मेल खाने वाले तत्वों की संख्या लौटाता है।
उदाहरण कोड
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
map<char, int> m;
map<char, int>::iterator it;
m.insert(pair<char, int>('a', 10));
m.insert(pair<char, int>('b', 20));
m.insert(pair<char, int>('c', 30));
m.insert(pair<char, int>('d', 40));
cout << "Size of the map: " << m.size() << endl;
cout << "map contains:\n";
for (it = m.begin(); it != m.end(); ++it)
cout << (*it).first << " => " << (*it).second << '\n';
for (char c = 'a'; c <= 'd'; c++) {
cout << "There are " << m.count(c) << " element(s) with key " << c << ":";
map<char, int>::iterator it;
for (it = m.equal_range(c).first; it != m.equal_range(c).second; ++it)
cout << ' ' << (*it).second;
cout << endl;
}
if (m.count('a'))
cout << "The key a is present\n";
else
cout << "The key a is not present\n";
if (m.count('f'))
cout << "The key f is present\n";
else
cout << "The key f is not present\n";
it = m.find('b');
m.erase(it);
cout << "Size of the map: " << m.size() << endl;
cout << "map contains:\n";
for (it = m.begin(); it != m.end(); ++it)
cout << (*it).first << " => " << (*it).second << '\n';
return 0;
}
आउटपुट
Size of the map: 4
map contains:
a => 10
b => 20
c => 30
d => 40
There are 1 element(s) with key a: 10
There are 1 element(s) with key b: 20
There are 1 element(s) with key c: 30
There are 1 element(s) with key d: 40
The key a is present
The key f is not present
Size of the map: 3
map contains:
a => 10
c => 30
d => 40