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

स्कोप रेज़ोल्यूशन ऑपरेटर बनाम इस पॉइंटर को सी ++ में?

यहां हम कुछ C++ उदाहरण देखेंगे और यह जानने की कोशिश करेंगे कि किस प्रकार का आउटपुट उत्पन्न होगा। तब हम स्कोप रिजॉल्यूशन ऑपरेटर के उद्देश्य और कार्यों और C++ में 'यह' पॉइंटर को समझ सकते हैं।

यदि कुछ कोड में कुछ सदस्य 'x' कहते हैं, और हम एक अन्य फ़ंक्शन का उपयोग करना चाहते हैं जो समान नाम 'x' के साथ एक तर्क लेता है, तो उस फ़ंक्शन में, यदि हम 'x' का उपयोग करते हैं, तो यह सदस्य चर को छिपा देगा, और स्थानीय चर का उपयोग किया जाएगा। आइए इसे एक कोड में जांचें।

उदाहरण

#include <iostream>
using namespace std;
class MyClass {
   private:
      int x;
   public:
      MyClass(int y) {
         x = y;
      }
   void myFunction(int x) {
      cout << "Value of x is: " << x;
   }
};
main() {
   MyClass ob1(10);
   ob1.myFunction(40);
}

आउटपुट

Value of x is: 40

कक्षा के x सदस्य तक पहुँचने के लिए, हमें 'इस' सूचक का उपयोग करना होगा। 'यह' एक विशेष प्रकार का सूचक है जो वर्तमान वस्तु की ओर इशारा करता है। आइए देखें कि कैसे 'यह' सूचक इस कार्य को करने में मदद करता है।

उदाहरण

#include <iostream>
using namespace std;
class MyClass {
   private:
      int x;
   public:
      MyClass(int y) {
         x = y;
      }
   void myFunction(int x) {
      cout << "Value of x is: " << this->x;
   }
};
main() {
   MyClass ob1(10);
   ob1.myFunction(40);
}

आउटपुट

Value of x is: 10

C++ में एक और ऑपरेटर होता है जिसे स्कोप रेजोल्यूशन ऑपरेटर कहा जाता है। उस ऑपरेटर का उपयोग मूल वर्ग के सदस्य या कुछ स्थिर सदस्यों तक पहुँचने के लिए किया जाता है। अगर हम इसके लिए स्कोप रेजोल्यूशन ऑपरेटर का इस्तेमाल करते हैं तो यह काम नहीं करेगा। इसी तरह, अगर हम स्थिर सदस्य के लिए 'इस' सूचक का उपयोग करते हैं, तो यह कुछ समस्याएं पैदा करेगा।

उदाहरण

#include <iostream>
using namespace std;
class MyClass {
   static int x;
   public:
      void myFunction(int x) {
         cout << "Value of x is: " << MyClass::x;
      }
};
int MyClass::x = 50;
main() {
   MyClass ob1;
   ob1.myFunction(40);
}

आउटपुट

Value of x is: 50

  1. पीएचपी स्कोप रिजॉल्यूशन ऑपरेटर (::)

    परिचय PHP में, डबल कोलन :: स्कोप रिजॉल्यूशन ऑपरेटर . के रूप में परिभाषित किया गया है . इसका उपयोग तब किया जाता है जब हम कक्षा स्तर पर परिभाषित स्थिरांक, गुणों और विधियों तक पहुंच बनाना चाहते हैं। वर्ग परिभाषा के बाहर इन वस्तुओं का जिक्र करते समय, वर्ग के नाम का उपयोग स्कोप रिज़ॉल्यूशन ऑपरेटर के साथ

  1. सी # में स्कोप रेज़ोल्यूशन ऑपरेटर क्या है?

    C# में स्कोप रेजोल्यूशन ऑपरेटर का C++ की तुलना में अलग अर्थ है। C++ में ::का उपयोग ग्लोबल वेरिएबल्स के लिए किया जाता है, जबकि C# में यह नेमस्पेस से संबंधित होता है। यदि आपके पास एक प्रकार है जो अलग-अलग नामस्थान में पहचानकर्ता साझा करता है, तो उन्हें पहचानने के लिए स्कोप रिज़ॉल्यूशन ऑपरेटर का उपयोग

  1. C# में हम स्कोप रेज़ोल्यूशन ऑपरेटर (::) का उपयोग कहाँ करते हैं?

    C++ में स्कोप रेजोल्यूशन ऑपरेटर यानी ::का उपयोग ग्लोबल वेरिएबल्स के लिए किया जाता है, जबकि C# में यह नेमस्पेस से संबंधित होता है। यदि आपके पास एक प्रकार है जो अलग-अलग नामस्थान में पहचानकर्ता साझा करता है, तो उन्हें पहचानने के लिए स्कोप रिज़ॉल्यूशन ऑपरेटर का उपयोग करें। उदाहरण के लिए, System.Consol