এই আর্টিকেলে C++ STL-এ map::get_allocator() ফাংশনের ব্যবহার, সিনট্যাক্স এবং উদাহরণ আলোচনা করা হয়েছে।
Map কী?
Map হলো একটি অ্যাসোসিয়েটিভ কন্টেইনার যা কী-ভ্যালু জোড়া হিসেবে ডেটা সংরক্ষণ করে। ডেটা داخلیভাবে কী অনুযায়ী সর্টেড থাকে।
map::get_allocator() কী?
এটি ম্যাপ কন্টেইনারের সাথে যুক্ত অ্যালোকেটর অবজেক্টের একটি কপি ফেরত দেয়। অ্যালোকেটর মেমরি ম্যানেজমেন্টের জন্য দায়বদ্ধ।
সিনট্যাক্স
map_name.get_allocator();
প্যারামিটার
কোনো প্যারামিটার নেয় না।
রিটার্ন ভ্যালু
অ্যালোকেটর অবজেক্ট।
উদাহরণ ১: অ্যালোকেটর টাইপ চেক
#include <bits/stdc++.h>
using namespace std;
int main() {
map<int, int> TP;
auto alloc = TP.get_allocator();
cout << "অ্যালোকেটর Pair<int,int> কিনা: "
<< boolalpha << (alloc == allocator<pair<int, int>>());
return 0;
}
আউটপুট
অ্যালোকেটর Pair<int,int> কিনা: true
উদাহরণ ২: মেমরি অ্যালোকেশন
#include <bits/stdc++.h>
using namespace std;
int main() {
map<char, int> TP;
pair<const char, int>* TP_pair;
TP_pair = TP.get_allocator().allocate(5);
cout << "৫টি পেয়ার অ্যালোকেট করার পর সাইজ: "
<< sizeof(*TP_pair) * 5 << endl;
return 0;
}
আউটপুট
৫টি পেয়ার অ্যালোকেট করার পর সাইজ: 40