This tutorial covers the essential Object-Oriented Programming (OOP) concepts practised during the semester, such as classes, objects, inheritance, polymorphism, and encapsulation, with practical examples in C++. The study plan and books can be accessed here.
Introduction to Object-Oriented Programming (OOP)
Object-Oriented Programming (OOP), is a way of writing programs by focusing on real-life objects. In the real world, everything we ...
Classes and Objects in C++: Beginner’s Guide with Real-Life Examples
Programming is about solving real-life problems. Imagine you're designing a software to manage a car showroom, or a student database ...
Understanding Parameterized Functions in C++
Introduction to Parameterized Functions: A parameterized function in C++ is a function that accepts one or more arguments, which are ...
Encapsulation in C++: A Beginner Guide
Encapsulation in object-oriented programming is a core principle. It helps keep data safe and programs modular. Imagine a School Management ...
Constructors in C++ (Object-Oriented Programming)
When we create an object in C++, we expect it to start in a valid and usable state. In real ...
Understanding Destructors In C++ (OOP)
In object-oriented programming, every object has a life cycle. It is created, it performs certain tasks, and eventually it is ...
Understanding Access Modifiers in C++
What Are Access Modifiers? In C++, access modifiers are keywords used to define the level of access that members of ...
Constructors and Destructors in C++
C++ gives every object a clear life story: it’s created, used, and then destroyed. To make this safe and predictable, ...
Understanding const Data Members and Functions in C++
In object-oriented programming, we design classes as blueprints for creating objects. A class itself does not store data; it only ...
Static Data Members and Functions in C++
In daily life, some things are shared by everyone rather than belonging to just one person. For example, in a ...
Understanding Function Overloading in C++
Introduction: Function overloading is a powerful feature in C++ that allows multiple functions with the same name to exist in ...
Operator Overloading in C++
Operator Overloading: In C++, operator overloading allows you to define custom behavior for operators (such as +, -, *, ==, ...
Difference between Method/Function Overloading and Overriding (Polymorphism) in C++
Polymorphism is one of the most powerful and essential concepts of Object-Oriented Programming (OOP). It refers to the ability of ...
Composition and Aggregation in C++
In Object-Oriented Programming (OOP), Composition and Aggregation describe relationships between classes, specifically how objects are associated with one another. Both ...
Associations, Aggregation & Composition in OOP (C++)
Object-Oriented Programming is not only about creating classes and objects, it is also about how objects interact with each other ...
Inheritance in C++ for Beginners: Complete Guide with Examples and Real-Life Explanation
In the real world, many objects share common characteristics but also have their own specialized features. For example, in a ...
Polymorphism in C++ | OOP Tutorial with Real-Life Examples
Polymorphism is one of the four core concepts of Object-Oriented Programming (OOP), along with encapsulation, inheritance, and abstraction. The term ...
Virtual and Pure Virtual Functions in C++
In our previous lessons, we explored how inheritance allows one class to reuse and extend the features of another. We ...
Abstract Class, Pure Abstract Class, and Interface in C++ (OOP)
Introduction to Abstract Classes An abstract class in C++ is a class designed to be specifically used as a base ...
Abstract Classes and Interfaces — Designing Extensible Frameworks
In our previous lecture, we explored virtual and pure virtual functions.We saw how a virtual function allows different derived classes ...
C++ Templates and Standard Template Library (STL): A Complete Beginner-Friendly Tutorial
Imagine running a grocery shop. You use different delivery boxes for apples, oranges, and eggs etc. But using a separate ...
Understanding Exception Handling in C++
Introduction to Exception Handling Exception handling is a mechanism in C++ that helps developers handle runtime errors gracefully. Instead of ...
Introduction to Errors and Exceptions Handling in C++
In real-world systems, things often go wrong. A bank server may become unreachable, a file may not open, or a ...
Constants in OOP – C++
In our daily life, there are some values that never change. For example: The number of days in a week ...
Operator Overloading in C++: Teaching Objects to Behave Like Natural Data Types
Operator overloading is a simple yet powerful concept in C++. Imagine how naturally we use operators in daily life. We ...

