g++ कंपाइलर Linux में GNU के लिए C++ कंपाइलर है।
g++ संकलक कुछ विशेष डेटा संरचनाओं के लिए समर्थन भी जोड़ता है जो C++ प्रोग्रामिंग भाषा मानक पुस्तकालय में नहीं हैं। इन्हें नीति-आधारित डेटा संरचना के रूप में जाना जाता है।
नीति-आधारित डेटा संरचनाएं प्रोग्रामर को C++ एसटीडी लाइब्रेरी की मानक डेटा संरचनाओं की तुलना में एक उच्च-प्रदर्शन, सिमेंटिक सुरक्षा और लचीलापन प्रदान करती हैं।
इन डेटा संरचनाओं को अपने कार्यक्रम में शामिल करने के लिए, निम्नलिखित पंक्तियों को जोड़ा जाना चाहिए,
#include <ext/pb_ds/assoc_container.hpp> using namespace __gnu_pbds;
उदाहरण
आइए एक कार्यक्रम देखें कि ये नीति-आधारित डेटा संरचनाएं कैसे काम करती हैं।
#include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> #include <functional> #include <iostream> using namespace __gnu_pbds; using namespace std; typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> new_data_set; int main() { new_data_set data; data.insert(34); data.insert(785); data.insert(12); data.insert(87); cout<<"The value at index 2 is "<<*data.find_by_order(2)<<endl; cout<<"The index of number 87 is "<<data.order_of_key(87)<<endl; return 0; }
आउटपुट
The value at index 2 is 785 The index of number 87 is 4
ये डेटा संरचनाएं इतनी बहुमुखी हैं कि आप कई कार्यों के लिए जा सकते हैं जैसे तत्व की अनुक्रमणिका की जांच करना, अनुक्रमणिका में तत्व ढूंढना आदि।