मुख्य सामग्री पर जाएं
मॉड्यूल 4 · पाठ 1 का 2पाठ्यक्रम में 9/18~12 min
मॉड्यूल पाठ (1/2)

कक्षाएँ और वस्तुएँ

ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) C++ का एक मुख्य प्रतिमान है। यह डेटा और फ़ंक्शंस को वर्ग नामक एकल इकाइयों में समूहीकृत करने की अनुमति देता है।

एक वर्ग एक ब्लूप्रिंट के रूप में कार्य करता है, जबकि एक ऑब्जेक्ट उस वर्ग का एक ठोस उदाहरण है।

class का मूल सिंटैक्स

C++ में, आप class कीवर्ड का उपयोग करते हैं। कुछ अन्य भाषाओं के विपरीत, C++ में, वर्ग परिभाषाएँ अर्धविराम ; से समाप्त होनी चाहिए:

C++
#include <iostream>
#include <string>

class Player {
    // By default, all members of a class are private
private:
    std::string name;
    int score = 0;

public:
    // Public methods to access or modify private data
    void setName(std::string newName) {
        name = newName;
    }

    void addScore(int points) {
        score += points;
    }

    void display() {
        std::cout << name << " has " << score << " points!" << std::endl;
    }
};

int main() {
    Player p; // Creating an object of type Player
    p.setName("Marco");
    p.addScore(15);
    p.display();
    return 0;
}

एक्सेस विनिर्देशक: public और private

एनकैप्सुलेशन में किसी ऑब्जेक्ट के आंतरिक कार्यान्वयन विवरण को छिपाना और केवल एक नियंत्रित इंटरफ़ेस को उजागर करना शामिल है।

C++ एक्सेस विनिर्देशकों का उपयोग करके इस नियंत्रण का प्रबंधन करता है:

  • private: सदस्य केवल कक्षा के सदस्य कार्यों के अंदर ही पहुंच योग्य हैं।
  • private कक्षाओं के लिए डिफ़ॉल्ट पहुंच स्तर है।
  • public: सदस्यों तक कक्षा के बाहर कहीं से भी पहुंच संभव है।

खुद कोशिश करना

व्यायाम#cpp.m4.l1.e1
प्रयास: 0लोड हो रहा है...

दो निजी पूर्णांक सदस्यों के साथ आयत नामक एक वर्ग को परिभाषित करें: चौड़ाई और ऊंचाई। उन्हें सेट करने के लिए एक सार्वजनिक विधि void setDimensions(int w, int h) और एक विधि int getArea() जोड़ें जो चौड़ाई * ऊंचाई लौटाती है। मुख्य रूप से, एक आयत बनाएं, उसके आयामों को 5 और 4 पर सेट करें, और क्षेत्र को प्रिंट करें।

संपादक लोड हो रहा है...
संकेत दिखाएँ

एक्सेस विनिर्देशक `निजी:`और`सार्वजनिक:`का उपयोग करें। घुंघराले ब्रेस के बाद अर्धविराम`;` के साथ कक्षा को बंद करना याद रखें।

3 प्रयासों के बाद समाधान उपलब्ध है

व्यायाम#cpp.m4.l1.e2
प्रयास: 0लोड हो रहा है...

काउंटर नामक एक वर्ग को परिभाषित करें जिसमें एक निजी सदस्य संख्या 0 से शुरू की गई है। सार्वजनिक तरीकों को शून्य वृद्धि () और int getCount () जोड़ें। मुख्य रूप से, एक काउंटर ऑब्जेक्ट बनाएं, इसे दो बार बढ़ाएं और मान प्रिंट करें।

संपादक लोड हो रहा है...
संकेत दिखाएँ

C++ में आप क्लास में सीधे डेटा प्राप्त कर सकते हैं: `int count = 0;`।

3 प्रयासों के बाद समाधान उपलब्ध है