इस लेख में हम C++ में forward_list::operator = के कार्य, सिंटैक्स और उदाहरणों पर चर्चा करेंगे।
STL में Forward_list क्या है?
Forward list ऐसे अनुक्रम कंटेनर हैं जो अनुक्रम में कहीं भी स्थिर समय में सम्मिलन और विलोपन की अनुमति देते हैं। Forward list को एकल-संलग्न सूचियों (singly-linked lists) के रूप में कार्यान्वित किया जाता है। क्रम को प्रत्येक तत्व के अगले तत्व से लिंक द्वारा बनाए रखा जाता है।
forward_list::operator = क्या है?
forward_list::operator = का उपयोग forward_list कंटेनर में नए मान निर्दिष्ट करने के लिए किया जाता है, जिससे पहले से मौजूद मान प्रतिस्थापित हो जाते हैं। यह ऑपरेटर नए मानों के अनुसार forward_list कंटेनर के आकार को भी संशोधित करता है।
सिंटैक्स
Forward_container1 = (forward_container2);
यह फ़ंक्शन उसी प्रकार के एक अन्य forward_list कंटेनर को स्वीकार करता है।
वापसी मान
यह "“*this”" पॉइंटर लौटाता है।
नीचे दिए गए कोड में हम दो forward lists बना रहे हैं और उनमें तत्व सम्मिलित कर रहे हैं, फिर हम ‘=’ ऑपरेटर का उपयोग करके forward list 1 के तत्वों को forward list 2 से अधिलेखित करेंगे।
उदाहरण
#include <forward_list> #include <iostream> using namespace std; int main(){ forward_list<int> forwardList1 = {10, 20, 30 }; forward_list<int> forwardList2 = { 0, 1, 2, 3 }; forwardList1 = forwardList2; cout << "my forwardList1 after using = operator with forwardList2\n"; for (auto i = forwardList1.begin(); i != forwardList1.end(); ++i) cout << ' ' << *i; return 0; }आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा
my forwardList1 after using = operator with forwardList2 0 1 2 3
उदाहरण
नीचे दिए गए कोड में हम दो forward lists बना रहे हैं और उनमें तत्व सम्मिलित कर रहे हैं, फिर हम ‘=’ ऑपरेटर का उपयोग करके forward list 1 के तत्वों को forward list 2 से अधिलेखित करेंगे। मुख्य कार्य अब forward list 2 की स्थिति जांचना है यानी क्या यह भी बदल जाएगा या नहीं।
#include <forward_list> #include <iostream> using namespace std; int main(){ forward_list<int> forwardList1 = {10, 20, 30 }; forward_list<int> forwardList2 = { 0, 1, 2, 3 }; forwardList1 = forwardList2; cout << "my forwardList1 after using = operator with forwardList2\n"; for (auto i = forwardList1.begin(); i != forwardList1.end(); ++i) cout << ' ' << *i; cout << "\n my forwardList2 after using = operator with forwardList1\n"; for (auto i = forwardList2.begin(); i != forwardList2.end(); ++i) cout << ' ' << *i; return 0; }आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा
my forwardList1 after using = operator with forwardList2 0 1 2 3 my forwardList2 after using = operator with forwardList1 0 1 2 3