C++ के विभिन्न अंतर्निहित फ़ंक्शंस का उपयोग करके वेक्टर का आकार कम किया जा सकता है। Pop_back() फ़ंक्शन उनमें से एक है। इसका उपयोग वेक्टर के अंतिम तत्व को पीछे से हटाने और वेक्टर के आकार को 1 से कम करने के लिए किया जाता है। लेकिन वेक्टर के अंतिम तत्व को इरेज़() फ़ंक्शन की तरह स्थायी रूप से नहीं हटाया जाता है। इस ट्यूटोरियल में इस फ़ंक्शन के विभिन्न उपयोगों के बारे में बताया गया है।
वाक्य - विन्यास:
वेक्टर :: पॉप_बैक ( ) ;इस फ़ंक्शन में कोई तर्क नहीं है, और यह कुछ भी नहीं लौटाता है।
पूर्व अपेक्षित:
इस ट्यूटोरियल के उदाहरणों की जांच करने से पहले, आपको यह जांचना होगा कि सिस्टम में g++ कंपाइलर स्थापित है या नहीं। यदि आप विज़ुअल स्टूडियो कोड का उपयोग कर रहे हैं, तो निष्पादन योग्य कोड बनाने के लिए C++ स्रोत कोड को संकलित करने के लिए आवश्यक एक्सटेंशन इंस्टॉल करें। यहां, C++ कोड को संकलित और निष्पादित करने के लिए विज़ुअल स्टूडियो कोड एप्लिकेशन का उपयोग किया गया है। Pop_back() फ़ंक्शन का उपयोग करके वेक्टर के आकार को कम करने के तरीके इस ट्यूटोरियल के अगले भाग में दिखाए गए हैं।
उदाहरण-1: वेक्टर से अनेक तत्व हटाएँ
Pop_back() फ़ंक्शन का उपयोग करके वेक्टर के आकार को कम करके वेक्टर कंटेनर से दो तत्वों को हटाने के लिए निम्नलिखित कोड के साथ एक C++ फ़ाइल बनाएं। कोड में 5 स्ट्रिंग मानों का एक वेक्टर घोषित किया गया है। वेक्टर से दो अंतिम तत्वों को अस्थायी रूप से हटाने और वेक्टर के आकार को 2 से कम करने के लिए पॉप_बैक () फ़ंक्शन को दो बार यहां बुलाया गया है। पॉप_बैक () फ़ंक्शन का उपयोग करने से पहले और बाद में वेक्टर की सामग्री को दो बार मुद्रित किया गया है।
// आवश्यक पुस्तकालय शामिल करें
#शामिल करें
#शामिल <वेक्टर>
का उपयोग करते हुए नाम स्थान कक्षा ;
int यहाँ मुख्य ( ) {
//स्ट्रिंग मानों का एक वेक्टर घोषित करें
वेक्टर < डोरी > पुष्प = { 'गुलाब' , 'लिटि' , 'गेंदे का फूल' , 'ट्यूलिप' , 'जल सिंह' } ;
अदालत << 'वेक्टर के मान : \एन ' ;
// मानों को प्रिंट करने के लिए लूप का उपयोग करके वेक्टर को पुनरावृत्त करें
के लिए ( int यहाँ मैं = 0 ; मैं < पुष्प। आकार ( ) ; ++ मैं )
अदालत << पुष्प [ मैं ] << ' ' ;
अदालत << ' \एन ' ;
//वेक्टर से अंतिम दो मान हटाएँ
पुष्प। पॉप_बैक ( ) ;
पुष्प। पॉप_बैक ( ) ;
अदालत << ' \एन हटाने के बाद वेक्टर का मान: \एन ' ;
// मानों को प्रिंट करने के लिए लूप का उपयोग करके वेक्टर को पुनरावृत्त करें
के लिए ( int यहाँ मैं = 0 ; मैं < पुष्प। आकार ( ) ; ++ मैं )
अदालत << पुष्प [ मैं ] << ' ' ;
अदालत << ' \एन ' ;
वापस करना 0 ;
}
आउटपुट:
उपरोक्त कोड निष्पादित करने के बाद निम्नलिखित आउटपुट दिखाई देगा।
उदाहरण-2: दूसरे वेक्टर से एक नया वेक्टर बनाएं
Pop_back() फ़ंक्शन का उपयोग करके तत्वों को हटाकर किसी अन्य वेक्टर से एक खाली वेक्टर में विशिष्ट मान डालने के लिए निम्नलिखित कोड के साथ एक C++ फ़ाइल बनाएं। कोड में 8 पूर्णांक संख्याओं का एक वेक्टर और पूर्णांक प्रकार का एक खाली वेक्टर घोषित किया गया है। 'जबकि' लूप का उपयोग पहले वेक्टर के प्रत्येक तत्व को पुनरावृत्त करने और यदि संख्या 2 से विभाज्य है तो तत्व को नए वेक्टर में डालने के लिए किया गया है। यहां सभी सम संख्याओं के योग की भी गणना की गई है। लूप की समाप्ति स्थिति तक पहुंचने के लिए लूप के प्रत्येक पुनरावृत्ति में पहले वेक्टर के प्रत्येक तत्व को पॉप_बैक() फ़ंक्शन द्वारा हटा दिया जाएगा।
// आवश्यक पुस्तकालय शामिल करें
#शामिल करें
#शामिल <वेक्टर>
का उपयोग करते हुए नाम स्थान कक्षा ;
int यहाँ मुख्य ( )
{
//पूर्णांक डेटा का एक वेक्टर घोषित करें
वेक्टर < int यहाँ > intवेक्टर { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;
// एक खाली वेक्टर घोषित करें
वेक्टर < int यहाँ > नयावेक्टर ;
अदालत << 'मूल वेक्टर के मान: \एन ' ;
// मानों को प्रिंट करने के लिए लूप का उपयोग करके वेक्टर को पुनरावृत्त करें
के लिए ( int यहाँ मैं = 0 ; मैं < intवेक्टर. आकार ( ) ; ++ मैं )
अदालत << intवेक्टर [ मैं ] << ' ' ;
अदालत << ' \एन ' ;
//परिणाम को आरंभ करें
int यहाँ परिणाम = 0 ;
//लूप को तब तक दोहराते रहें जब तक वेक्टर खाली न हो जाए
जबकि ( ! intवेक्टर. खाली ( ) )
{
/*
न्यूवेक्टर में सम्मिलित करने के लिए सम संख्याओं का पता लगाएं
और सम संख्याओं का योग ज्ञात करें
*/
अगर ( intवेक्टर. पीछे ( ) % 2 == 0 )
{
परिणाम + = intवेक्टर. पीछे ( ) ;
नयावेक्टर। वापस धक्का देना ( intवेक्टर. पीछे ( ) ) ;
}
// intVactor के अंत से तत्व हटाएँ
intवेक्टर. पॉप_बैक ( ) ;
}
अदालत << 'नए वेक्टर के मान: \एन ' ;
// मानों को प्रिंट करने के लिए लूप का उपयोग करके वेक्टर को पुनरावृत्त करें
के लिए ( int यहाँ मैं = 0 ; मैं < नयावेक्टर। आकार ( ) ; ++ मैं )
अदालत << नयावेक्टर [ मैं ] << ' ' ;
अदालत << ' \एन ' ;
अदालत << 'सभी सम संख्याओं का योग :' << परिणाम << ' \एन ' ;
वापस करना 0 ;
}
आउटपुट:
उपरोक्त कोड निष्पादित करने के बाद निम्नलिखित आउटपुट दिखाई देगा। पहले वेक्टर में तीन सम संख्याएँ थीं। 8, 2 और 4 हैं।
उदाहरण-3: जांचें कि वेक्टर का अंतिम तत्व हटा दिया गया है या नहीं
यह पहले उल्लेख किया गया है कि पॉप_बैक() वेक्टर से तत्वों को स्थायी रूप से नहीं हटाता है, और यह केवल वेक्टर के आकार को कम करके तत्व को हटा देता है। इसलिए, हटाया गया तत्व तब तक उसी स्थिति में रहता है जब तक कि वेक्टर का आकार नहीं बढ़ जाता है और तत्व को किसी अन्य तत्व से बदल नहीं देता है। यह जांचने के लिए कि पॉप_बैक() फ़ंक्शन द्वारा हटाया गया तत्व मौजूद है या नहीं, निम्नलिखित कोड के साथ एक C++ फ़ाइल बनाएं। मूल वेक्टर की अंतिम स्थिति पॉप_बैक() फ़ंक्शन का उपयोग करने से पहले और बाद में मुद्रित की गई है।
#शामिल करें#शामिल <वेक्टर>
का उपयोग करते हुए नाम स्थान कक्षा ;
int यहाँ मुख्य ( )
{
//पूर्णांक डेटा का एक वेक्टर घोषित करें
वेक्टर < int यहाँ > intवेक्टर { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;
// एक खाली वेक्टर घोषित करें
वेक्टर < int यहाँ > नयावेक्टर ;
// एक पूर्णांक चर घोषित करें
int यहाँ लंबाई ;
//वेक्टर के आकार के आधार पर अंतिम तत्व प्रिंट करें
लंबाई = intवेक्टर. आकार ( ) ;
अदालत << 'वेक्टर का वर्तमान आकार:' << लंबाई << ' \एन ' ;
अदालत << 'हटाने से पहले वेक्टर का अंतिम मान:' << intवेक्टर [ लंबाई - 1 ] << ' \एन ' ;
//वेक्टर के अंत से तत्व को हटा दें
intवेक्टर. पॉप_बैक ( ) ;
// हटाने के बाद वेक्टर के आकार के आधार पर अंतिम तत्व प्रिंट करें
लंबाई = intवेक्टर. आकार ( ) ;
अदालत << 'वेक्टर का वर्तमान आकार:' << लंबाई << ' \एन ' ;
अदालत << 'हटाने के बाद वेक्टर का अंतिम मान:' << intवेक्टर [ लंबाई ] << ' \एन ' ;
वापस करना 0 ;
}
आउटपुट:
उपरोक्त कोड निष्पादित करने के बाद निम्नलिखित आउटपुट दिखाई देगा। आउटपुट से पता चलता है कि वेक्टर का आकार 1 से कम हो गया है, लेकिन मूल वेक्टर की अंतिम स्थिति का तत्व अभी भी मौजूद है।
निष्कर्ष:
इस ट्यूटोरियल में सरल उदाहरणों का उपयोग करके पॉप_बैक() फ़ंक्शन के तीन अलग-अलग उपयोगों का वर्णन किया गया है। इस ट्यूटोरियल के उदाहरणों का अभ्यास करने के बाद पाठकों के लिए इस फ़ंक्शन का उपयोग करने का मुख्य उद्देश्य स्पष्ट हो जाएगा।