एक एक्सेसर (आमतौर पर) एक फ़ंक्शन है जो किसी संपत्ति को पढ़ने या लिखने के लिए जिम्मेदार है।

अवलोकन

ओओपी के बाहर से एक वर्ग के गुणों को अस्वीकार्य बनाना एक आम बात है।

उन गुणों में डेटा को संचालित करने का एक तरीका प्रदान करने के लिए, एक्सेसर्स बनाए जाते हैं। आमतौर पर, एक संपत्ति के लिए दो एक्सेसर्स प्रदान किए जाते हैं, एक मूल्य प्राप्त करने के लिए, और एक इसे स्थापित करने के लिए। हालांकि, एक्सेसर्स का वास्तविक लाभ यह है कि वे डेटा को वास्तव में सेट या पढ़ने से पहले कुछ अतिरिक्त गणना कर सकते हैं। उदाहरण के लिए, यदि किसी के पास संख्याओं को विभाजित करने के लिए एक वर्ग है, तो एक एक्सेसर divisor संपत्ति को शून्य पर सेट करने और उसके अनुसार कार्य करने से रोक सकता है।

एक्सेसर्स की एक विशिष्ट जोड़ी (C ++ में) (ध्यान दें कि हम एक्सेसर्स में कैसे चेक लगा सकते हैं):

class MyClass
{
public:
    void set( int newValue );
    int & get( void );
private:
    int property;
}

void MyClass::set( int newValue )
{
   //we can utilize the accessor to check the value before actually storing it.
   if( newValue > 0 )
       property = newValue;
   else
       return;
}

int & MyClass::get()
{
    return property;
}

यह सभी देखें