इस लेख में हम C++ STL में set::cend() और set::cbegin() फ़ंक्शन पर चर्चा करेंगे, उनका सिंटैक्स, कार्य और उनके रिटर्न मान।
C++ STL में Set क्या है?
C++ STL में Sets ऐसे कंटेनर हैं जिनमें सामान्य क्रम में अद्वितीय तत्व होने चाहिए। Sets में अद्वितीय तत्व होने चाहिए क्योंकि तत्व का मान तत्व की पहचान करता है। एक बार सेट कंटेनर में मान जोड़ने के बाद बाद में संशोधित नहीं किया जा सकता, हालांकि हम अभी भी सेट में मानों को हटा या जोड़ सकते हैं। Sets का उपयोग बाइनरी सर्च ट्री के रूप में किया जाता है।
set::cbegin() क्या है:
cbegin() फ़ंक्शन C++ STL में एक अंतर्निहित फ़ंक्शन है, जिसे <set> हेडर फ़ाइल में परिभाषित किया गया है। यह फ़ंक्शन कॉन्स्टेंट इटरेटर लौटाता है जो सेट कंटेनर में पहले तत्व की ओर इंगित करता है। चूंकि सेट कंटेनर में सभी इटरेटर्स कॉन्स्टेंट इटरेटर्स हैं, उनका उपयोग सामग्री को संशोधित करने के लिए नहीं किया जा सकता, हम केवल उनका उपयोग इटरेटर को बढ़ाकर या घटाकर सेट कंटेनर के तत्वों के बीच पार करने के लिए कर सकते हैं।
सिंटैक्स
constant_iterator name_of_set.cbegin();
पैरामीटर
यह फ़ंक्शन कोई पैरामीटर स्वीकार नहीं करता।
रिटर्न वैल्यू
यह फ़ंक्शन constant_iterator लौटाता है, जो अनुक्रम के अंत से पहले का होता है।
उदाहरण
Input: set<int> set_a = {18, 34, 12, 10, 44}; set_a.cbegin();
Output: Beginning element in the set container: 10
उदाहरण
#include <iostream>
#include <set>
using namespace std;
int main () {
set<int> set_a = {18, 34, 12, 10, 44};
cout << "Beginning element in the set container: ";
cout << *(set_a.cbegin());
return 0;
}
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:
Beginning element in the set container: 10
उदाहरण
#include <iostream>
#include <set>
using namespace std;
int main () {
set<int> set_a = {18, 34, 12, 10, 44};
cout << "set_a contains:";
for (auto it = set_a.cbegin(); it != set_a.cend(); ++it)
cout << ' ' << *it;
cout << '\n';
return 0;
}
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:
set_a contains: 10 12 18 34 44
set::cend() क्या है
cend() फ़ंक्शन C++ STL में एक अंतर्निहित फ़ंक्शन है, जिसे <set> हेडर फ़ाइल में परिभाषित किया गया है। यह फ़ंक्शन सेट कंटेनर में अंतिम तत्व के बाद के तत्व का कॉन्स्टेंट इटरेटर लौटाता है। चूंकि सेट कंटेनर में सभी इटरेटर्स कॉन्स्टेंट इटरेटर्स हैं, उनका उपयोग सामग्री को संशोधित करने के लिए नहीं किया जा सकता, हम केवल उनका उपयोग इटरेटर को बढ़ाकर या घटाकर सेट कंटेनर के तत्वों के बीच पार करने के लिए कर सकते हैं।
सिंटैक्स
constant_iterator name_of_set.cend();
पैरामीटर
यह फ़ंक्शन कोई पैरामीटर स्वीकार नहीं करता।
रिटर्न वैल्यू
यह फ़ंक्शन constant_iterator लौटाता है, जो अनुक्रम के अंत से पहले का होता है।
उदाहरण
Input: set<int> set_a = {18, 34, 12, 10, 44}; set_a.end();
Output: Past to end element: 5
set::cend() का उपयोग cbegin() या begin() के साथ पूरे सेट के माध्यम से पुनरावृत्त करने के लिए किया जाता है, क्योंकि यह कंटेनर में अंतिम तत्व के बाद के तत्व की ओर इंगित करता है।
उदाहरण
#include <iostream>
#include <set>
using namespace std;
int main () {
set<int> set_a = {18, 34, 11, 10, 44};
cout << "Past to end element: ";
cout << *(set_a.cend());
return 0;
}
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:
Past to end element: 5 हमें एक रैंडम मान मिलेगा
उदाहरण
#include <iostream>
#include <set>
using namespace std;
int main () {
set<int> set_a = {18, 34, 12, 10, 44};
cout << " set_a contains:";
for (auto it = set_a.cbegin(); it != set_a.cend(); ++it)
cout << ' ' << *it;
cout << '\n';
return 0;
}
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:
set_a contains: 10 12 18 34 44