सी ++ लाइब्रेरी - <वेक्टर>
परिचय
वैक्टर अनुक्रम कंटेनर हैं जो आकार बदल सकते हैं। कंटेनर एक ऑब्जेक्ट है जो एक ही प्रकार का डेटा रखता है। अनुक्रम कंटेनर रैखिक अनुक्रम में तत्वों को कड़ाई से संग्रहीत करते हैं।
वेक्टर सन्निहित स्मृति स्थानों में तत्वों को संग्रहीत करता है और सबस्क्रिप्ट ऑपरेटर [] का उपयोग करके किसी भी तत्व तक सीधे पहुंच को सक्षम करता है। सरणी के विपरीत, वेक्टर रन टाइम में आवश्यकतानुसार सिकुड़ या विस्तारित हो सकता है। वेक्टर का भंडारण स्वचालित रूप से नियंत्रित किया जाता है।
रनटाइम पर कार्यशीलता को कम करने और विस्तार करने के लिए, वेक्टर कंटेनर संभावित विकास के लिए समायोजित करने के लिए कुछ अतिरिक्त भंडारण आवंटित कर सकता है इस प्रकार कंटेनर की वास्तविक क्षमता आकार से अधिक है। इसलिए, सरणी की तुलना में, वेक्टर भंडारण को प्रबंधित करने और एक कुशल तरीके से गतिशील रूप से बढ़ने की क्षमता के बदले में अधिक मेमोरी का उपभोग करता है।
शून्य आकार के वैक्टर भी मान्य हैं। उस स्थिति में वेक्टर.बेगिन () और वेक्टर.एंड () एक ही स्थान पर इंगित करता है। लेकिन सामने () या पीछे () कॉल करने का व्यवहार अपरिभाषित है।
परिभाषा
नीचे std :: वेक्टर की <वेक्टर> हेडर फ़ाइल से परिभाषा दी गई है
template < class T, class Alloc = allocator<T> > class vector;
मापदंडों
T - निहित तत्व का प्रकार।
टी को उपयोगकर्ता-परिभाषित प्रकार सहित किसी अन्य डेटा प्रकार द्वारा प्रतिस्थापित किया जा सकता है।
Alloc - एलोकेटर ऑब्जेक्ट का प्रकार।
डिफ़ॉल्ट रूप से, आबंटक वर्ग टेम्पलेट का उपयोग किया जाता है, जो सरलतम मेमोरी आवंटन मॉडल को परिभाषित करता है और मूल्य-स्वतंत्र है।
सदस्य प्रकार
निम्नलिखित सदस्य प्रकारों को पैरामीटर के रूप में उपयोग किया जा सकता है या सदस्य कार्यों द्वारा वापसी प्रकार का उपयोग किया जा सकता है।
अनु क्रमांक। | सदस्य प्रकार | परिभाषा |
---|---|---|
1 | मान प्रकार | टी (टेम्पलेट का पहला पैरामीटर) |
2 | allocator_type | एलोक (टेम्पलेट का दूसरा पैरामीटर) |
3 | संदर्भ | मान प्रकार& |
4 | const_reference | const value_type और |
5 | सूचक | मान प्रकार* |
6 | const_pointer | const value_type * |
7 | इटरेटर | value_type के लिए एक यादृच्छिक अभिगमकर्ता |
8 | const_iterator | const value_type के लिए एक यादृच्छिक अभिगमकर्ता |
9 | reverse_iterator | std :: Rev_iterator <iterator> |
10 | const_reverse_iterator | std :: Rev_iterator <const_iterator> |
1 1 | आकार प्रकार | size_t |
12 | difference_type | ptrdiff_t |
<वेक्टर> से कार्य
नीचे <वेक्टर> हैडर से सभी तरीकों की सूची दी गई है।
कंस्ट्रक्टर्स
अनु क्रमांक। | विधि और विवरण |
---|---|
1 | वेक्टर :: वेक्टर डिफ़ॉल्ट कंस्ट्रक्टर एक खाली कंटेनर का निर्माण करता है, जिसमें शून्य तत्व होते हैं। |
2 | वेक्टर :: वेक्टर फिल कंस्ट्रक्टर प्रत्येक तत्व के लिए n तत्वों और assignd वैल के साथ एक कंटेनर का निर्माण करता है । |
3 | वेक्टर :: वेक्टर रेंज कंस्ट्रक्टर एक कंटेनर को पहले से आखिरी तक की सीमा में कई तत्वों के साथ तैयार करता है । |
4 | वेक्टर :: वेक्टर कॉपी कंस्ट्रक्टर मौजूदा कंटेनर x में मौजूद प्रत्येक तत्वों की प्रतिलिपि के साथ एक कंटेनर बनाता है। |
5 | वेक्टर :: वेक्टर मूव कंस्ट्रक्टर स्थानांतरित शब्दार्थ का उपयोग करके अन्य की सामग्री के साथ कंटेनर का निर्माण करता है । |
6 | वेक्टर :: वेक्टर आरंभीक सूची निर्माता इनिशियलाइज़र सूची से एक कंटेनर का निर्माण करता है। |
नाशक
अनु क्रमांक। | विधि और विवरण |
---|---|
1 | वेक्टर :: ~ वेक्टर कंटेनर को नष्ट करके कंटेनर मेमोरी को नष्ट कर देता है। |
सदस्य कार्य
अनु क्रमांक। | विधि और विवरण |
---|---|
1 | वेक्टर :: असाइन संस्करण भरें पुराने तत्वों को प्रतिस्थापित करके वेक्टर तत्वों को नए मान प्रदान करें। |
2 | वेक्टर :: रेंज संस्करण असाइन करें पुराने तत्वों को प्रतिस्थापित करके वेक्टर तत्वों को नए मान प्रदान करें। |
3 | वेक्टर :: आरम्भक सूची संस्करण प्रदान करें पुराने तत्वों को प्रतिस्थापित करके वेक्टर तत्वों को नए मान प्रदान करें। |
4 | वेक्टर :: पर वेक्टर में स्थान n पर मौजूद तत्व का संदर्भ देता है । |
5 | वेक्टर :: वापस वेक्टर के अंतिम तत्व का संदर्भ देता है। |
6 | वेक्टर :: शुरू वेक्टर के पहले तत्व की ओर इशारा करते हुए एक रैंडम एक्सेस इटरेटर लौटें। |
7 | वेक्टर :: क्षमता तत्वों के संदर्भ में, आवंटित किए गए भंडारण के आकार को लौटाता है। |
8 | वेक्टर :: cbegin एक निरंतर यादृच्छिक अभिगमकर्ता लौटाता है जो वेक्टर की शुरुआत की ओर इशारा करता है। |
9 | वेक्टर :: cend एक निरंतर यादृच्छिक अभिगमकर्ता लौटाता है जो वेक्टर की शुरुआत की ओर इशारा करता है। |
10 | वेक्टर :: स्पष्ट वेक्टर से सभी तत्वों को हटाकर वेक्टर को नष्ट कर देता है और वेक्टर का आकार शून्य पर सेट करता है। |
1 1 | वेक्टर :: crbegin एक निरंतर रिवर्स इटरेटर लौटाता है जो कंटेनर की शुरुआत की ओर इशारा करता है। |
12 | वेक्टर :: crend एक निरंतर रिवर्स इटरेटर लौटाता है जो वेक्टर के रिवर्स एंड की ओर इशारा करता है। |
13 | वेक्टर :: डेटा वेक्टर कंटेनर के पहले तत्व के लिए एक सूचक लौटाता है। |
14 | वेक्टर :: क़ायम करना स्थिति में नए तत्व डालने से कंटेनर का विस्तार होता है । |
15 | वेक्टर :: emplace_back वेक्टर के अंत में नया तत्व सम्मिलित करता है। |
16 | वेक्टर :: खाली परीक्षण कि क्या वेक्टर खाली है या नहीं। |
17 | वेक्टर :: अंत एक पुनरावृत्त लौटाता है जो वेक्टर कंटेनर में पिछले-अंत तत्व को इंगित करता है । |
18 | वेक्टर :: मिटा स्थिति संस्करण वेक्टर से एकल तत्व निकालता है। |
19 | वेक्टर :: मिटा रेंज संस्करण वेक्टर से एकल तत्व निकालता है। |
20 | वेक्टर :: सामने वेक्टर के पहले तत्व का संदर्भ देता है। |
21 | वेक्टर :: get_allocator वेक्टर के साथ जुड़े एक आवंटन लौटाता है। |
22 | वेक्टर :: एकल तत्व संस्करण डालें नए तत्व को स्थिति में सम्मिलित करके पुनरावृति बढ़ाता है । |
23 | वेक्टर :: डालने के संस्करण भरें कंटेनर में नए तत्व डालने से वेक्टर का विस्तार होता है। |
24 | वेक्टर :: सम्मिलित रेंज संस्करण कंटेनर में नए तत्व डालने से वेक्टर का विस्तार होता है। |
25 | वेक्टर :: सम्मिलित करें संस्करण कंटेनर में नए तत्व डालने से वेक्टर का विस्तार होता है। |
26 | वेक्टर :: इंसुलेटर सूची संस्करण डालें कंटेनर में नए तत्व डालने से वेक्टर का विस्तार होता है। |
27 | वेक्टर :: MAX_SIZE रिटर्न की अधिकतम संख्या वेक्टर द्वारा आयोजित की जा सकती है। |
28 | वेक्टर :: ऑपरेटर = कॉपी संस्करण पुराने की जगह वेक्टर को नई सामग्री असाइन करें और यदि आवश्यक हो तो आकार को संशोधित करता है। |
29 | वेक्टर :: ऑपरेटर = चाल संस्करण पुराने की जगह वेक्टर को नई सामग्री असाइन करें और यदि आवश्यक हो तो आकार को संशोधित करता है। |
30 | वेक्टर :: ऑपरेटर = initializer सूची संस्करण पुराने की जगह वेक्टर को नई सामग्री असाइन करें और यदि आवश्यक हो तो आकार को संशोधित करता है। |
31 | वेक्टर :: ऑपरेटर [] स्थान n पर मौजूद तत्व का संदर्भ देता है । |
32 | वेक्टर :: pop_back वेक्टर से अंतिम तत्व निकालता है और वेक्टर के आकार को एक से कम कर देता है। |
33 | वेक्टर :: push_back वेक्टर के अंत में नए तत्व को सम्मिलित करता है और वेक्टर के आकार को एक से बढ़ाता है। |
34 | वेक्टर :: rbegin एक रिवर्स पुनरावृत्ति देता है जो वेक्टर के अंतिम तत्व की ओर इशारा करता है। |
35 | वेक्टर :: उखड़ना एक रिवर्स इटरेटर लौटाता है जो वेक्टर के रिवर्स एंड की ओर इशारा करता है। |
36 | वेक्टर :: आरक्षित रिजर्व वेक्टर क्षमता से किए गए अनुरोधों को रोकने के लिए कम से कम पर्याप्त n तत्वों। |
37 | वेक्टर :: आकार वेक्टर का आकार बदलता है। |
38 | वेक्टर :: shrink_to_fit कंटेनर को उसके आकार को फिट करने की क्षमता को कम करने का अनुरोध करता है। |
39 | वेक्टर :: आकार वेक्टर में मौजूद तत्वों की संख्या लौटाता है। |
40 | वेक्टर :: स्वैप वेक्टर की सामग्री को वेक्टर x की सामग्री के साथ आदान-प्रदान करता है । |
गैर-सदस्य अतिभारित कार्य
अनु क्रमांक। | विधि और विवरण |
---|---|
1 | संचालक == टेस्ट कि दो वैक्टर बराबर हैं या नहीं। |
2 | संचालक! = टेस्ट कि दो वैक्टर बराबर हैं या नहीं। |
3 | ऑपरेटर < टेस्ट कि पहले वेक्टर अन्य की तुलना में कम है या नहीं। |
4 | ऑपरेटर <= परीक्षण कि क्या पहला वेक्टर अन्य की तुलना में कम या बराबर है या नहीं। |
5 | संचालक> परीक्षण कि क्या पहला वेक्टर अन्य की तुलना में अधिक है या नहीं। |
6 | संचालक> = परीक्षण कि क्या पहला वेक्टर अन्य की तुलना में अधिक या बराबर है या नहीं। |
7 | विनिमय दो वेक्टर की सामग्री का आदान प्रदान करता है। |