NotesBCAObject Oriented Programming using C++
UGSEC2503

Object Oriented Programming using C++ Notes

Program:BCA
Semester:Semester 2
Credits:3
Units:4 Units

Subject Overview

This paper moves students from procedural C into object-oriented C++: classes, objects, constructors and destructors, all forms of inheritance, polymorphism (function/operator overloading, virtual functions, abstract classes), and basic file handling. A 3-credit core theory paper that underlies the OOP thinking used throughout the rest of the degree.

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
FrameworkThe four pillars of OOP
  • 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.

Read Unit 1 notes
  • Defining classes and member functions
  • declaring objects
  • access specifiers (private/public/protected)
  • array of objects
  • parameterized and copy constructors
  • multiple constructors
  • dynamic initialization
  • destructors
ProcessLife of an object
  1. 1Declare the class

    Data members and member functions

  2. 2Create the object

    Constructor runs automatically

  3. 3Use the object

    Call member functions

  4. 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.

Read Unit 2 notes
  • Modes of inheritance
  • single/multiple/multilevel/hierarchical/hybrid inheritance
  • function overriding
ClassificationTypes of inheritance
Inheritance
  • 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.

Read Unit 3 notes
  • 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
ComparisonOverloading vs overriding
Overloading
Overriding

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.

Read Unit 4 notes

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.

Want the Complete Notes & Past Papers?

WhatsApp us and we'll send you the full notes, question banks, and previous year papers for Object Oriented Programming using C++.