Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में वेक्टर कैसे काम करता है?

वेक्टर में डायनामिक ऐरे की तरह खुद को ऑटोमैटिकली रीसाइज़ करने की क्षमता होती है। जब कोई एलिमेंट डाला या हटाया जाता है, तो कंटेनर अपने स्टोरेज को ऑटोमैटिकली संभालता है। वेक्टर एलिमेंट्स सन्निहित (contiguous) स्टोरेज में रखे जाते हैं ताकि उन्हें इटरेटर्स का उपयोग करके एक्सेस और ट्रैवर्स किया जा सके। डेटा को वेक्टर के शुरुआत, मध्य या अंत में डाला या हटाया जा सकता है।

यह C++ प्रोग्राम वेक्टर के विभिन्न फ़ंक्शन्स को लागू करता है।

एल्गोरिदम

शुरुआत
    वेक्टर टाइप का वेरिएबल v घोषित करें
    वेक्टर टाइप का इटरेटर it घोषित करें
    integer डेटाटाइप के दो वेरिएबल c और i घोषित करें
    while (1) करें
        "1. वेक्टर का साइज़" प्रिंट करें
        "2. वेक्टर में एलिमेंट डालें" प्रिंट करें
        "3. वेक्टर का अंतिम एलिमेंट हटाएं" प्रिंट करें
        "4. वेक्टर को रीसाइज़ करें" प्रिंट करें
        "5. वेक्टर को रिज़र्व करें" प्रिंट करें
        "6. वेक्टर की क्षमता दिखाएं" प्रिंट करें
        "7. इटरेटर द्वारा दिखाएं" प्रिंट करें
        "8. वेक्टर क्लियर करें" प्रिंट करें
        "9. बाहर निकलें" प्रिंट करें
        "अपनी पसंद दर्ज करें:" प्रिंट करें
        वेरिएबल c का मान दर्ज करें
        Switch(c)
            Case 1:
                "वेक्टर का साइज़:" प्रिंट करें
                size() फ़ंक्शन कॉल करके वेक्टर का साइज़ प्रिंट करें
                Break
            Case 2:
                "डालने के लिए मान दर्ज करें:" प्रिंट करें
                वेरिएबल i का मान दर्ज करें
                push_back() फ़ंक्शन कॉल करके वेक्टर में मान डालें
                Break
            Case 3:
                "डाला गया अंतिम एलिमेंट हटाएं:" प्रिंट करें
                pop_back() फ़ंक्शन कॉल करके वेक्टर से मान हटाएं
                Break
            Case 4:
                "वेक्टर एलिमेंट्स रीसाइज़ करें:" प्रिंट करें
                resize() फ़ंक्शन कॉल करके वेक्टर रीसाइज़ करें
                Break
            Case 5:
                "वेक्टर एलिमेंट्स रिज़र्व करें:" प्रिंट करें
                reserve() फ़ंक्शन कॉल करके वेक्टर का साइज़ रिज़र्व करें
                Break
            Case 6:
                "वेक्टर की क्षमता दिखा रहे हैं:" प्रिंट करें
                capacity() फ़ंक्शन कॉल करके वेक्टर की क्षमता दिखाएं
                Break
            Case 7:
                "इटरेटर द्वारा वेक्टर दिखा रहे हैं:" प्रिंट करें
                for (it = v.begin(); it != v.end(); it++)
                    इटरेटर it का मान प्रिंट करें
                Break
            Case 8:
                clear() फ़ंक्शन कॉल करके वेक्टर क्लियर करें
                "वेक्टर क्लियर हो गया" प्रिंट करें
                break
            Case 9:
                exit() फ़ंक्शन कॉल करके बाहर निकलें
                break
            Default:
                "गलत पसंद" प्रिंट करें
समाप्ति

उदाहरण कोड

#include <iostream>
#include <vector>
using namespace std;

int main() {
    vector<int> v;
    vector<int>::iterator it;
    int c, i;
    while (1) {
        cout << "1. वेक्टर का साइज़" << endl;
        cout << "2. वेक्टर में एलिमेंट डालें" << endl;
        cout << "3. वेक्टर का अंतिम एलिमेंट हटाएं" << endl;
        cout << "4. वेक्टर को रीसाइज़ करें" << endl;
        cout << "5. वेक्टर रिज़र्व करें" << endl;
        cout << "6. वेक्टर की क्षमता दिखाएं" << endl;
        cout << "7. इटरेटर द्वारा दिखाएं" << endl;
        cout << "8. वेक्टर क्लियर करें" << endl;
        cout << "9. बाहर निकलें" << endl;
        cout << "अपनी पसंद दर्ज करें: ";
        cin >> c;
        switch(c) {
            case 1:
                cout << "वेक्टर का साइज़: ";
                cout << v.size() << endl;
                break;
            case 2:
                cout << "डालने के लिए मान दर्ज करें: ";
                cin >> i;
                v.push_back(i);
                break;
            case 3:
                cout << "डाला गया अंतिम एलिमेंट हटाएं:" << endl;
                v.pop_back();
                break;
            case 4:
                cout << "वेक्टर एलिमेंट्स रीसाइज़ करें:" << endl;
                v.resize(10);
                break;
            case 5:
                cout << "वेक्टर एलिमेंट्स रिज़र्व करें:" << endl;
                v.reserve(100);
                break;
            case 6:
                cout << "वेक्टर की क्षमता दिखा रहे हैं: ";
                cout << v.capacity() << endl;
                break;
            case 7:
                cout << "इटरेटर द्वारा वेक्टर दिखा रहे हैं: ";
                for (it = v.begin(); it != v.end(); it++) {
                    cout << *it << " ";
                }
                cout << endl;
                break;
            case 8:
                v.clear();
                cout << "वेक्टर क्लियर हो गया" << endl;
                break;
            case 9:
                exit(1);
                break;
            default:
                cout << "गलत पसंद" << endl;
        }
    }
    return 0;
}

मुख्य वेक्टर फ़ंक्शन्स

फ़ंक्शन विवरण
size() वेक्टर में एलिमेंट्स की संख्या लौटाता है
capacity() वेक्टर की वर्तमान क्षमता लौटाता है
resize(n) वेक्टर का साइज़ n पर सेट करता है
reserve(n) कम से कम n एलिमेंट्स के लिए मेमोरी रिज़र्व करता है
push_back() अंत में एलिमेंट जोड़ता है
pop_back() अंतिम एलिमेंट हटाता है
clear() सभी एलिमेंट्स हटाता है
  1. डेटा स्क्रैपिंग कैसे काम करती है? डेटा स्क्रैपिंग कैसे काम करती है?

    चूंकि आप इसे पढ़ रहे हैं, इस बात की अच्छी संभावना है कि आपने डेटा स्क्रैपिंग के लाभों के बारे में सुना होगा और इसकी स्वचालित तकनीक आपको बिना कोई मैन्युअल काम किए बहुत सारा डेटा इकट्ठा करने देती है। लेकिन डेटा स्क्रैपिंग वास्तव में कैसे काम करती है? और क्या यह कठिन है, या कोई भी डेटा स्क्रैप करना सी

  1. C++ में एक्सेप्शन कैसे काम करते हैं C++ में एक्सेप्शन कैसे काम करते हैं

    परिचयC++ में एक्सेप्शन हैंडलिंग रनटाइम त्रुटियों को संभालने की एक प्रक्रिया है। एक्सेप्शन एक घटना है जो C++ में रनटाइम पर फेंकी जाती है। सभी एक्सेप्शन std::exception क्लास से प्राप्त होते हैं। यह एक रनटाइम त्रुटि है जिसे संभाला जा सकता है। यदि हम एक्सेप्शन को नहीं संभालते हैं तो यह एक्सेप्शन संदेश प

  1. स्नैपचैट का अनावरण: कैसे ऐप मैसेजिंग को बदल देता है स्नैपचैट का अनावरण: कैसे ऐप मैसेजिंग को बदल देता है

    यह अतिशयोक्ति नहीं होगी अगर हम कहें कि स्नैपचैट ने मोबाइल मैसेजिंग ऐप्स की दुनिया में क्रांति ला दी है। स्नैपचैट की शुरुआत से पहले, किसी ने भी दोस्तों के साथ संवाद करने के लिए इस तरह के अनूठे तरीके का सपना भी नहीं देखा था। स्नैपचैट जो अवधारणा लाता है वह है सेल्फ-डिस्ट्रक्टिंग इमेज और वीडियो जो इसे न