Object Oriented Programming using C++ Notes
Subject Overview
This paper moves students from procedural C into object-oriented C++: classes, objects, constructors and destructors, all forms of inheritance, polymorphism (function/
Subject at a glance
4
Units
23
Topics
3
Credits
4
Infographics
Unit-wise Syllabus
4 units — open any unit for detailed topic-wise notes, diagrams and important exam questions
- Introduction to OOP and its basic features
- C++ program structure
- compiling and executing a C++ program
- procedural vs object-oriented languages
Encapsulation
Bundle data and functions; hide internals
Abstraction
Show only what users need
Inheritance
Reuse and extend existing classes
Polymorphism
One interface, many behaviours
Study guide
Object-oriented programming organises code around objects that combine data and behaviour. You learn the principles and basic features of OOP, the structure of a C++ program, how to compile and run it, and how procedural languages differ from object-oriented ones. Be able to explain encapsulation, abstraction, inheritance and polymorphism with one everyday example each.
- Defining classes and member functions
- declaring objects
- access specifiers (private/public/protected)
- array of objects
- parameterized and copy constructors
- multiple constructors
- dynamic initialization
- destructors
- 1Declare the class
Data members and member functions
- 2Create the object
Constructor runs automatically
- 3Use the object
Call member functions
- 4Object goes out of scope
Destructor runs and frees resources
Study guide
Classes are blueprints and objects are the things built from them. You define classes and member functions, declare objects, use access specifiers (private, public, protected), build arrays of objects, and write parameterised, copy and multiple constructors, dynamic initialisation and destructors. Write a small class such as BankAccount to see all of these ideas working together.
- Modes of inheritance
- single/multiple/multilevel/hierarchical/hybrid inheritance
- function overriding
Single
One base, one derived class
Multiple
One class inherits from two bases
Multilevel
A → B → C chain
Hierarchical
Several classes share one base
Hybrid
A combination of the above
Study guide
Inheritance lets a new class reuse an existing one. You study the modes of inheritance (public, protected, private), the types (single, multiple, multilevel, hierarchical and hybrid) and function overriding. Draw an inheritance diagram for each type and remember the order in which constructors are called.
- Early and late binding
- function overloading
- operator overloading (unary and binary) and its rules
- virtual functions
- pure virtual functions
- abstract classes
- opening/closing files
- reading and writing a file
Where
Same class
Base and derived class
Signature
Different parameters
Same signature
Resolved at
Compile time (early binding)
Run time with virtual functions (late binding)
Example
area(int) and area(float)
draw() redefined in Circle
Study guide
Polymorphism means one interface with many behaviours. You learn early and late binding, function overloading, operator overloading (unary and binary) with its rules, virtual functions, pure virtual functions and abstract classes, followed by file handling: opening, closing, reading and writing files. Understand the difference between overloading and overriding; it is asked very often.
Why Object Oriented Programming using C++ Matters
OOP is the dominant way modern software is written. The concepts you learn in C++ carry directly into Java, Python and C#, and OOP questions are a staple of campus interviews and technical exams.
How to Prepare for Object Oriented Programming using C++
- Code every concept: write a small program for constructors, each inheritance type, operator overloading and virtual functions.
- Learn the difference between overloading and overriding and between early and late binding.
- Draw class diagrams to understand inheritance hierarchies.
- Revise the rules for operator overloading, since they are easy marks.
Object Oriented Programming using C++: Frequently Asked Questions
What are the four pillars of OOP?
Encapsulation, abstraction, inheritance and polymorphism.
What is the difference between function overloading and overriding?
Overloading means several functions with the same name but different parameters in one scope, resolved at compile time. Overriding means a derived class redefines a base-class function, usually resolved at run time through virtual functions.
Why learn C++ in BCA?
C++ combines low-level control with object-oriented design, which builds a strong base for Java, systems programming and later software engineering papers.
