हेल्लो दोस्तों! आज हम इस post में Access Specifiers in C++ in Hindi (C++ में एक्सेस स्पेसिफाएर्स क्या है?) के बारें में पढेंगे और इसके example को भी देखेंगे. तो चलिए start करते हैं:-
Access Specifiers in C++ in Hindi
ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में Data Hiding एक महत्वपूर्ण concept है. हम access specifiers का प्रयोग करके data hiding को प्राप्त कर सकते हैं. access specifiers को access modifiers भी कहते हैं.
C++ में, Access specifiers का प्रयोग करके हम एक class members को accessibility प्रदान करते है. जिससे class members को restrict किया जाता है और इन class members को बाहर के functions के द्वारा direct access नहीं किया जा सकता.
Types of access specifiers in Hindi
c++ में, access specifiers तीन प्रकार के होते हैं:-
- Public
- Private
- Protected
Public –
- Class members को public करने के लिए public कीवर्ड का प्रयोग किया जाता है.
- public के रूप में declare किये गये data members और member functions को किसी भी दूसरे class और functions के द्वारा access किया जा सकता है.
- class के public members को program में कही से भी access किया जा सकता है. इन्हें dot operator (.) के द्वारा direct access किया जा सकता है.
इसका example –
class PublicAccess
{
//public access modifier
public:
int x; // Data Member Declaration
void display(); // Member Function decaration
}
Private –
- private कीवर्ड का प्रयोग class members को private करने के लिए किया जाता है.
- private के रूप में declare किये गये class members को class के अंदर से ही access किया जा सकता है.
- इन्हें class के बाहर किसी function के द्वारा direct access नहीं किया जा सकता.
- class के private data members को केवल member functions या friend functions के द्वारा ही एक्सेस किया जा सकता है.
- अगर कोई private members को access करना चाहेगा तो उसे compile-time error आएगा.
इसका उदाहरण –
class PrivateAccess
{
// private access modifier
private:
int x; // Data Member Declaration
void display(); // Member Function decaration
}
Protected –
- protected कीवर्ड का प्रयोग class members को protected करने के लिए किया जाता है.
- protected access modifier भी private access modifier की तरह समान होता है. इन्हें भी class के बाहर access नहीं किया जा सकता है.
- protected के रूप में declare किये गये class members को derived class के द्वारा भी एक्सेस किया जा सकता है.
class ProtectedAccess
{
// protected access modifier
protected:
int x; // Data Member Declaration
void display(); // Member Function decaration
}
Note – अगर किसी class के अंदर members के लिए कोई भी access specifier नहीं specify किया गया हो तो default रूप में members का access specifier, Private होगा.
- Encapsulation in C++ in Hindi
- Polymorphism in C++ in Hindi
Access Specifiers का example –
#include <iostream>
using namespace std;
class MyClass {
public: // Public access specifier
int x;
private: // Private access specifier
int y;
};
int main() {
MyClass myObj;
myObj.x = 25; // Allowed (x is public)
myObj.y = 50; // Not allowed (y is private)
return 0;
}
इसका आउटपुट – इसमें compile time error आएगा. क्योंकि इसमें y private है. इसलिए इसे class के बाहर access नहीं किया जा सकता.