Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ एसटीएल में मल्टीमैप get_allocator () फ़ंक्शन

इस लेख में हम C++ STL में मल्टीमैप ::get_allocator () फंक्शन की कार्यप्रणाली, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।

C++ STL में मल्टीमैप क्या है?

मल्टीमैप सहयोगी कंटेनर हैं, जो मानचित्र कंटेनर के समान हैं। यह एक विशिष्ट क्रम में की-वैल्यू और मैप्ड वैल्यू के संयोजन से बनने वाले तत्वों को स्टोर करने की सुविधा भी देता है। एक मल्टीमैप कंटेनर में एक ही कुंजी से जुड़े कई तत्व हो सकते हैं। डेटा को आंतरिक रूप से हमेशा संबंधित कुंजियों की सहायता से क्रमबद्ध किया जाता है।

मल्टीमैप क्या है::get_allocator()?

multimap::get_allocator() फ़ंक्शन C++ STL में एक इनबिल्ट फ़ंक्शन है, जिसे हेडर फ़ाइल में परिभाषित किया गया है। get_allocator() का उपयोग मल्टीमैप कंटेनर में मेमोरी चंक्स आवंटित करने के लिए किया जाता है। यह फ़ंक्शन इससे जुड़े कंटेनर के आवंटक ऑब्जेक्ट की एक प्रति देता है।

एक आवंटक एक वस्तु है जो एक कंटेनर के गतिशील रूप से स्मृति आवंटन के लिए जिम्मेदार है।

सिंटैक्स

multi_name.get_allocator();

पैरामीटर

फ़ंक्शन कोई पैरामीटर स्वीकार नहीं करता है।

रिटर्न वैल्यू

यह फ़ंक्शन संबंधित कंटेनर के आवंटनकर्ता को लौटाता है।

इनपुट

int *Ptr;
std::multimap<int> newmap;
newmap.insert(make_pair(‘A’, 22));
newmap.insert(make_pair(‘B’, 78));
newmap.insert(make_pair(‘C’, 66));
newmap.insert(make_pair(‘D’, 81));
Ptr = mymap.get_allocator().allocate(4);

आउटपुट

ptr = A:22 B:78 C:66 D:81

उदाहरण

#include <iostream>
#include <map>
using namespace std;
int main(){
   int arrsize;
   multimap<char, int> mul;
   pair<const char, int>* pr;
   pr = mul.get_allocator().allocate(15);
   // assign some values to array
   arrsize = sizeof(multimap<char, int>::value_type) * 10;
   cout << "Size of the allocated array is: "<< arrsize << " bytes.\n";
   mul.get_allocator().deallocate(pr, 5);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

Size of the allocated array is: 80 bytes.

उदाहरण

#include <iostream>
#include <map>
using namespace std;
int main(){
   int arrsize;
   multimap<char, int> mul;
   pair<const char, int>* pr;
   pr = mul.get_allocator().allocate(2);
   // assign some values to array
   arrsize = sizeof(multimap<char, int>::value_type) * 5;
   cout << "Size of the allocated array is: "<< arrsize << " bytes.\n";
   mul.get_allocator().deallocate(pr, 5);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

Size of the allocated array is: 40 bytes.

  1. iswblank () सी ++ एसटीएल में समारोह

    C++ में iswblank () फ़ंक्शन का उपयोग यह जांचने के लिए किया जाता है कि दिया गया विस्तृत वर्ण रिक्त है या नहीं। यह सी भाषा में ctype.h हेडर फाइल में और सी ++ स्टैंडर्ड टेम्प्लेट लाइब्रेरी (एसटीएल) में सीसीटाइप हेडर फाइल में मौजूद है। iswblank का सिंटैक्स इस प्रकार है int iswblank(wint_t ch) वापसी का

  1. सी ++ एसटीएल में स्थिर_सॉर्ट ()

    STL की स्थिर_सॉर्ट विधि पहले घटकों को नाम के साथ कुंजी के रूप में आरोही क्रम में क्रमबद्ध करती है और बाद में घटकों को उनके सेगमेंट के साथ कुंजी के रूप में व्यवस्थित किया जाता है। इसके अलावा, स्थिर_सॉर्ट () गणना को इस तथ्य के प्रकाश में स्थिर माना जाता है कि तुलनीय घटकों के समग्र अनुरोध को बनाए रखा ज

  1. सी ++ में ट्रांसफॉर्म ()

    ट्रांसफॉर्म फ़ंक्शन सी ++ एसटीएल में मौजूद है। इसका इस्तेमाल करने के लिए हमें एल्गोरिथम हेडर फाइल को शामिल करना होगा। इसका उपयोग सभी तत्वों पर एक ऑपरेशन करने के लिए किया जाता है। उदाहरण के लिए यदि हम किसी सरणी के प्रत्येक तत्व का वर्ग करना चाहते हैं, और इसे दूसरे में संग्रहीत करना चाहते हैं, तो हम ट