MCAWALA

C++ Vertical Menu

C++ Programming Topics

OOPs क्या है?

OOPs का मतलब है Object Oriented Programming System। इसमें हम अपने प्रोग्राम को ऑब्जेक्ट्स और क्लासेस में बाँटते हैं, जिससे कोड को समझना, दोबारा इस्तेमाल करना और मैनेज करना आसान हो जाता है।

OOPs के 4 मुख्य स्तंभ

  1. Encapsulation (इनकैप्सुलेशन)
  2. Abstraction (एब्स्ट्रैक्शन)
  3. Inheritance (इनहेरिटेंस)
  4. Polymorphism (पॉलीमॉर्फिज्म)

1. Class और Object

Class एक खाका (template) होता है और Object उसका उदाहरण होता है।

उदाहरण:


#include <iostream>
using namespace std;

class Car {
public:
    string brand;
    int speed;

    void drive() {
        cout << "Car is driving" << endl;
    }
};

int main() {
    Car myCar;
    myCar.brand = "Honda";
    myCar.speed = 100;
    myCar.drive();
    return 0;
}
        

2. Encapsulation (इनकैप्सुलेशन)

डेटा को छिपाकर सुरक्षित रखना, और उसे access करने के लिए methods का उपयोग करना।

उदाहरण:


#include <iostream>
using namespace std;

class Student {
private:
    int marks;

public:
    void setMarks(int m) {
        marks = m;
    }

    int getMarks() {
        return marks;
    }
};

int main() {
    Student s;
    s.setMarks(90);
    cout << "Marks: " << s.getMarks();
    return 0;
}
        

3. Inheritance (इनहेरिटेंस)

एक class दूसरी class से गुण और methods को प्राप्त कर सकती है।

उदाहरण:


#include <iostream>
using namespace std;

class Animal {
public:
    void eat() {
        cout << "This animal eats food" << endl;
    }
};

class Dog : public Animal {
public:
    void bark() {
        cout << "Dog barks" << endl;
    }
};

int main() {
    Dog d;
    d.eat();   // Base class method
    d.bark();  // Derived class method
    return 0;
}
        

4. Polymorphism (पॉलीमॉर्फिज्म)

एक ही नाम के function का अलग-अलग काम करना।

Function Overloading:


#include <iostream>
using namespace std;

class Math {
public:
    int add(int a, int b) {
        return a + b;
    }

    float add(float a, float b) {
        return a + b;
    }
};

int main() {
    Math m;
    cout << m.add(2, 3) << endl;
    cout << m.add(2.5f, 3.5f);
    return 0;
}
        

Function Overriding:


#include <iostream>
using namespace std;

class Animal {
public:
    virtual void sound() {
        cout << "Animal sound" << endl;
    }
};

class Cat : public Animal {
public:
    void sound() override {
        cout << "Meow" << endl;
    }
};

int main() {
    Animal* a;
    Cat c;
    a = &c;
    a->sound();
    return 0;
}
        

5. Abstraction (एब्स्ट्रैक्शन)

जरूरी जानकारी को दिखाना और गैर-जरूरी जानकारी को छुपाना।

उदाहरण:


#include <iostream>
using namespace std;

class WashingMachine {
public:
    void start() {
        cout << "Washing started" << endl;
    }

private:
    void rotateMotor() {
        cout << "Motor running" << endl;
    }
};

int main() {
    WashingMachine wm;
    wm.start();
    return 0;
}
        

OOPs के फायदे

  • कोड को दोबारा उपयोग किया जा सकता है (Reusability)
  • डेटा सुरक्षित रहता है (Security)
  • प्रोग्राम को समझना आसान होता है
  • बड़े प्रोजेक्ट्स को बेहतर तरीके से हैंडल किया जा सकता है

निष्कर्ष

OOPs C++ का एक बहुत ही महत्वपूर्ण हिस्सा है। यह आपको प्रोफेशनल तरीके से प्रोग्रामिंग सिखाता है और बड़े-बड़े प्रोजेक्ट्स में मदद करता है। इसे अच्छे से समझना हर छात्र के लिए जरूरी है।