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

C++ में ऐरे इंडेक्स ऑपरेटर [] को ओवरलोड करना

ऑपरेटर ओवरलोडिंग का ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग भाषा सुविधाओं में महत्वपूर्ण भूमिका है। ऑपरेटर ओवरलोडिंग एक प्रकार का कंपाइल टाइम या स्टेटिक पॉलीमॉर्फिज्म है।

एल्गोरिदम

Begin
    Arr नामक एक क्लास बनाएं और ऐरे का आकार घोषित करें।
    क्लास के अंदर, फॉर लूप का उपयोग करके सभी तत्वों को इनिशियलाइज़ करें।
    सभी तत्वों को प्रिंट करें।
End.

उदाहरण कोड

#include <iostream>
#include <stdlib.h>
using namespace std;

const int M = 7;

class Arr {
private:
    int A[M];
    int size;

public:
    Arr(int s, int v) {
        if (s > M) {
            cout << endl << "This is beyond maximum size";
            exit(1);
        }
        size = s;
        for (int i = 0; i < size; i++)
            A[i] = v;
    }

    int& operator[](int i) {
        if ((i < 0) || (i >= size)) {
            cout << endl << "Error: Array out of bound";
            exit(1);
        }
        return A[i];
    }
};

int main() {
    int i = 0;
    Arr a(7, 0);
    for (i = 0; i < 7; i++)
        a[i] = i * 10;
    cout << "Array elements are:" << endl;
    for (i = 0; i < 7; i++) {
        int val = a[i];
        cout << val << endl;
    }
    return 0;
}

आउटपुट

Array elements are:
0
10
20
30
40
50
60
  1. - C++ फंक्शन में 2D ऐरे पास करना

    ऐरे को फंक्शन में तर्क के रूप में पास किया जा सकता है। इस प्रोग्राम में, हम इसे फंक्शन में पास करके 2 डायमेंशनल ऐरे के तत्वों को प्रदर्शित करेंगे। एल्गोरिदम Begin 2D ऐरे n[][] को फंक्शन show() में पास किया जाता है। फंक्शन show() को कॉल करें, ऐरे n (n) को नेस्टेड फॉर लूप का उपयोग करके ट्रैवर

  1. - C++ फ़ंक्शन में ऐरे पास करना

    C++ पूरे ऐरे को फ़ंक्शन में आर्गुमेंट के रूप में पास करने की अनुमति नहीं देता। हालांकि, आप ऐरे के नाम को बिना इंडेक्स के निर्दिष्ट करके ऐरे का पॉइंटर पास कर सकते हैं। यदि आप सिंगल-डायमेंशन ऐरे को फ़ंक्शन में आर्गुमेंट के रूप में पास करना चाहते हैं, तो आपको फ़ंक्शन फॉर्मल पैरामीटर को निम्नलिखित तीन

  1. - C++ में यूनरी ऑपरेटर ओवरलोडिंग

    C++ में यूनरी ऑपरेटर ओवरलोडिंग operator कीवर्ड एक फ़ंक्शन घोषित करता है जो परिभाषित करता है कि किसी क्लास के इंस्टेंस पर लागू होने पर एक ऑपरेटर प्रतीक का क्या अर्थ है। यह ऑपरेटर को एक से अधिक अर्थ देता है (ओवरलोड करता है)। कंपाइलर ऑपरेंड्स के प्रकारों की जांच करके विभिन्न अर्थों को अलग करता है। यू