यह देखते हुए कि कार्य C++ STL में deque::assign() की कार्यप्रणाली को दिखाना है।
Deque एक डबल एंडेड कतार है। C++ में, deque::assign() एक इनबिल्ट फंक्शन है जिसका उपयोग डेक कंटेनर को नया मान असाइन करने के लिए किया जाता है। हर बार इस फ़ंक्शन को कहा जाता है, यह मौजूदा मानों को बदलकर और तदनुसार आवंटित आकार को बदलकर डेक कंटेनर को एक नया मान प्रदान करता है।
सिंटैक्स
deque::assign() का सिंटैक्स इस प्रकार है -
dequename.assign(<int> size, <int> val)
पैरामीटर
इस फ़ंक्शन में 2 पैरामीटर शामिल हैं -
पहला है आकार , जो डेक कंटेनर के आकार को दर्शाता है और दूसरा है val , जो कि डेक कंटेनर में निहित मान है।
साथ ही आकार . के बजाय और वैल हम प्रारंभिक और समाप्ति बिंदु घोषित करने के लिए इटरेटर को पैरामीटर के रूप में भी दे सकते हैं, दोनों का चित्रण एक उदाहरण के रूप में दिया गया है।
रिटर्न वैल्यू
फ़ंक्शन का कोई वापसी मूल्य नहीं है।
उदाहरण
Input: dq.assign(5, 1) Output: deque elements are: 1 1 1 1 1 Input: dq.assign(5, 2) dq1.assign(dq.start()+2, dq.end()) Output: deque elements are: 2 2 2 2 2 deque elements are: 2 2 2
स्पष्टीकरण - deque dq में 5 तत्व 2 2 2 2 2 हैं, जबकि dq1 में हम शुरुआत से 2 तत्वों को छोड़ रहे हैं और dq के तीसरे तत्व से शुरू कर रहे हैं इसलिए dq1 में 2 2 2 है।
आकार और मान के साथ
उदाहरण
#include <bits/stdc++.h>
using namespace std;
int main() {
deque<int> deq;
// assign 5 values of 1 each
deq.assign(5, 1); //here, 5 is the size and 1 is the value
cout << "deque elements are: ";
for (auto it = deq.begin(); it != deq.end(); it++)
cout << *it << " ";
return 0;
} आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
deque elements are: 1 1 1 1 1
पुनरावृत्तियों के साथ
उदाहरण
#include <bits/stdc++.h>
using namespace std;
int main() {
deque<int> deq;
// assign 5 values of 2 each
deq.assign(5, 2);
cout << "deque elements are: ";
for (auto it = deq.begin(); it != deq.end(); it++)
cout << *it << " ";
deque<int> deq1;
// assigns all elements from
// the second position to deque1
deq1.assign(deq.begin() + 2, deq.end());
cout << "\ndeque1 elements are: ";
for (auto it = deq1.begin(); it != deq1.end(); it++)
cout << *it << " ";
return 0;
} आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
deque elements are: 2 2 2 2 2 deque1 elements are: 2 2 2