TABFlux
HomeCoursesUniversitiesProgramsForum
Contact Us

© 2026 TABFlux. All rights reserved. Built for students, by students.

ForumPrivacy PolicyTerms of ServiceContact UsContributors

OOP in C++/Java

Object-Oriented Programming (OOPs) is a programming paradigm that organizes software around objects and classes. It focuses on core concepts such as encapsulation, inheritance, polymorphism, and abstraction, enabling modular, reusable, and maintainable software development.

Select University

TUPoUFWU

Select Program

BSC-CSITBCA-NEWBCA-OLDBITBCT-NEWBEI-NEW

TabFlux . Object Oriented Programming . TU . BIT

Object Oriented Programming

0%

Course Title: Object Oriented Programming

Course No: BIT153

Nature of the Course: Theory + Lab

Semester: 2

Full Marks: 60 + 20 + 20

Pass Marks: 24 + 8 + 8

Credit Hours: 3

Course Description

Course Objectives

Course Contents

1. Introduction to Object Oriented Programming
3 hrs
1.1. Overview of structured and object oriented programming approach
1.2. Characteristics of object oriented languages
2. Basics of C++ programming
5 hrs
2.1. C++ Program Structure
2.2. Character Set and Tokens
2.3. Data Type
2.4. Type Conversion
2.5. Preprocessor Directives
2.6. Namespace
2.7. Input/Output Streams and Manipulators
2.8. Dynamic Memory Allocation with new and delete
2.9. Control Statements
2.10. Functions
  • Function Overloading
  • Inline Functions
  • Default Argument
  • Pass by Reference
  • Return by Reference
  • Scope and Storage Class
2.11. Pointers
  • Pointer variables declaration & initialization
  • Operators in pointers
  • Pointers and Arrays
  • Pointer and Function
3. Class and Objects
8 hrs
3.1. Class and Object
3.2. Accessing members of class
3.3. Initialization of class object (Constructor)
3.4. Destructor
3.5. Default Constructor
3.6. Parameterized Constructor
3.7. Copy Constructor
3.8. The Default Copy Constructor
3.9. Objects as Function Arguments
3.10. Returning Objects from Functions
3.11. Structures and Classes
3.12. Memory allocation for Objects
3.13. Static members
3.14. Member functions defined outside the class
4. Operator Overloading
7 hrs
4.1. Fundamental of operator overloading
4.2. Restriction on operator overloading
4.3. Operator functions as a class members
4.4. Overloading unary and binary operator
4.5. Data Conversion
  • Basic to basic
  • Basic to user-defined
  • User-defined to basic
  • User-defined to user-defined
5. Inheritance
7 hrs
5.1. Introduction to inheritance
5.2. Derived Class and Base Class
5.3. Access Specifiers (private, protected, and public)
5.4. Types of inheritance
5.5. Public and Private Inheritance
5.6. Constructor and Destructor in derived classes
5.7. Aggregation
5.8. Ambiguity
6. Virtual Function, Polymorphism, and other C++ Features
5 hrs
6.1. Concept of Virtual functions
6.2. Late Binding
6.3. Abstract class and pure virtual functions
6.4. Virtual Destructors
6.5. Virtual base class
6.6. Friend function and Static function
6.7. Assignment and copy initialization
6.8. Copy constructor
6.9. This pointer
6.10. Concrete classes
6.11. Polymorphism and its roles
7. Function Templates and Exception Handling
4 hrs
7.1. Function templates
7.2. Function templates with multiple arguments
7.3. Class templates
7.4. Templates and inheritance
7.5. Exceptional Handling
  • Try, throw and catch
  • Use of exceptional handling
8. File and Streams
6 hrs
8.1. Stream Class Hierarchy
8.2. String I/O
  • Reading I/O
  • Writing I/O
  • Detecting end of file
8.3. Character I/O
8.4. Object I/O
  • Writing an object to Disk
  • Reading an object from Disk
8.5. File pointers

Laboratory Works

  1. 1.Lab exercises for Introduction to OOP unit
  2. 2.Lab exercises for Basics of C++ programming unit
  3. 3.Lab exercises for Class and Objects unit
  4. 4.Lab exercises for Operator Overloading unit
  5. 5.Lab exercises for Inheritance unit
  6. 6.Lab exercises for Virtual Function, Polymorphism, and other C++ Features unit
  7. 7.Lab exercises for Function Templates and Exception Handling unit
  8. 8.Lab exercises for File and Streams unit

Text Books

  1. 1.Robert Lafore, Object Oriented Programming in C++, Fourth Edition, SAMS publications.

Reference Books

  1. 1.Deitel and Deitel, C++ How to Program, Third Edition, Pearson Publication.
  2. 2.Joyce Farrell, Object-oriented programming using C++, Fourth Edition, Cengage Learning.
  3. 3.Herbert Schildt, C++ The Complete Reference, Fourth Edition, Tata McGraw Hill Publication.

Notes:

Source:

The course familiarizes students with the concepts of object oriented programming using C++.
The main objective of this course is to understand the basics of object oriented programming. This course covers the C++ concepts such as objects, class, operator overloading, inheritance and polymorphism, file I/O, exception handling and templates.
Students should be able to implement the above mentioned concepts of Object Oriented Programming using C++ language.
This syllabus follows the official BIT curriculum of Tribhuvan University. In case of any doubt or revision, the university’s published syllabus shall be considered authoritative.