C++ OOPs concepts explained the way the examiner wants them
Classes, inheritance, polymorphism, virtual functions — the C++ paper is 60% OOP. Here is each concept with the example that gets full marks.
Study Delight Publications, Delhi

If you already know C, C++ is C plus one big idea: objects. The C++ paper (and most second-semester OOP papers) spends more than half its marks on the OOP concepts. Each one below comes with the example an examiner expects to see.
1. Class and object
A class is a blueprint; an object is one thing built from it. The examiner wants: data members, member functions, access specifiers, and the object created in main().
class Student {
string name; int marks; // private by default
public:
void set(string n, int m) { name = n; marks = m; }
void show() { cout << name << " " << marks << endl; }
};
int main() { Student s; s.set("Aarav", 92); s.show(); }
2. Constructors and destructors
Default, parameterised and copy constructors; when each is called; why a destructor has no return type and no parameters. Expect a "write a class with all three constructors" question.
3. Inheritance
Single, multiple, multilevel, hierarchical, hybrid — draw the diagram, name the type, write the syntax class B : public A. The five-mark favourite is the diamond problem and its fix with virtual base classes.
4. Polymorphism
-
Compile-time — function overloading and operator overloading. Operator overloading of
+for aComplexclass is asked almost every year. -
Run-time — virtual functions and function overriding. Know why a base-class pointer to a derived object needs
virtualto call the right function.
class Shape { public: virtual void area() { cout << "Shape"; } };
class Circle : public Shape { public: void area() override { cout << "Circle"; } };
Shape* s = new Circle(); s->area(); // prints Circle
5. Encapsulation and abstraction
Encapsulation = data + functions in one unit, with private hiding the data. Abstraction = showing only what is needed; in C++ that means abstract classes with pure virtual functions virtual void f() = 0;.
6. Friend functions, static members, this pointer
Short-answer regulars. One line each: a friend function can access private members; a static member is shared by all objects; this points to the calling object.
7. Templates and exception handling
Function templates (template <class T>), class templates, and try / catch / throw. Usually the last unit and the easiest marks.
What to write in a theory answer
Definition (one line) → syntax → a 6–10 line example → a two-line "advantage". That structure earns full marks for every concept above. Examiners mark against a list, and that list is exactly those four parts.