स्कोप रिजॉल्यूशन ऑपरेटर का उपयोग स्टेटिक या क्लास मेंबर्स को एक्सेस करने के लिए किया जाता है जबकि this पॉइंटर का उपयोग ऑब्जेक्ट मेंबर्स को एक्सेस करने के लिए किया जाता है जब उसी नाम का लोकल वेरिएबल होता है।
स्कोप रिजॉल्यूशन ऑपरेटर
उदाहरण
#include <iostream>
using namespace std;
class AB {
static int x;
public:
// लोकल पैरामीटर 'x' क्लास मेंबर 'x' को छुपाता है
// लेकिन हम इसे :: का उपयोग करके एक्सेस कर सकते हैं
void print(int x) {
cout << "the number is: " << AB::x;
}
};
// C++ में स्टेटिक मेंबर्स को नीचे की तरह स्पष्ट रूप से परिभाषित किया जाना चाहिए
int AB::x = 7;
int main() {
AB ob;
int m = 6;
ob.print(m);
return 0;
}
आउटपुट
the number is: 7
this पॉइंटर
उदाहरण
#include <iostream>
using namespace std;
class AB {
int x;
public:
AB() {
x = 6;
}
// यहां लोकल पैरामीटर 'x' ऑब्जेक्ट के मेंबर 'x' को छुपाता है
// हम इसे this का उपयोग करके एक्सेस कर सकते हैं
void print(int x) {
cout << "the number is: " << this->x;
}
};
int main() {
AB ob;
int m = 7;
ob.print(m);
return 0;
}
आउटपुट
the number is: 6