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 . BSC-CSIT

Object Oriented Programming

0%

Course Title: Object Oriented Programming

Course No: CSC166

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. Programming Approaches
  • Overview of structured programming approach
  • Object oriented programming approach
  • Characteristics of object oriented languages
2. Basics of C++ programming
5 hrs
2.1. C++ Fundamentals
  • C++ Program Structure
  • Character Set and Tokens
  • Data Type
  • Type Conversion
  • Preprocessor Directives
  • Namespace
  • Input/Output Streams and Manipulators
  • Dynamic Memory Allocation with new and delete
  • Control Statements
2.2. Functions
  • Function Overloading
  • Inline Functions
  • Default Argument
  • Pass by Reference
  • Return by Reference
  • Scope and Storage Class
2.3. Pointers
  • Pointer variables declaration & initialization
  • Operators in pointers
  • Pointers and Arrays
  • Pointer and Function
3. Classes & Objects
8 hrs
3.1. Class Basics
  • A Simple Class and Object
  • Accessing members of class
  • Structures and Classes
  • Memory allocation for Objects
  • Static members
  • Member functions defined outside the class
3.2. Initialization of class objects
  • Constructor, Destructor
  • Default Constructor
  • Parameterized Constructor
  • Copy Constructor
  • The Default Copy Constructor
3.3. Objects and Functions
  • Objects as Function Arguments
  • Returning Objects from Functions
4. Operator Overloading
7 hrs
4.1. Operator Overloading Fundamentals
  • Fundamental of operator overloading
  • Restriction on operator overloading
  • Operator functions as a class members
  • Overloading unary and binary operator
4.2. Data Conversion
  • basic to basic
  • basic to user-defined
  • user-defined to basic
  • user-defined to user-defined
5. Inheritance
7 hrs
5.1. Inheritance Basics
  • Introduction to inheritance
  • Derived Class and Base Class
  • Access Specifiers (private, protected, and public)
  • Types of inheritance
5.2. Advanced Inheritance Concepts
  • Public and Private Inheritance
  • Constructor and Destructor in derived classes
  • Aggregation
6. Virtual Function, Polymorphism, and miscellaneous C++ Features
5 hrs
6.1. Virtual Functions and Polymorphism
  • Concept of Virtual functions
  • Late Binding
  • Abstract class and pure virtual functions
  • Virtual Destructors
  • Virtual base class
  • Polymorphism and its roles
6.2. Miscellaneous Features
  • Friend function and Static function
  • Assignment and copy initialization
  • Copy constructor
  • This pointer
  • Concrete classes
7. Function Templates and Exception Handling
4 hrs
7.1. Templates
  • Function templates
  • Function templates with multiple arguments
  • Class templates
  • templates and inheritance
7.2. Exception Handling
  • Exceptional Handling (Try, throw and catch)
  • Use of exceptional handling
8. File handling
6 hrs
8.1. Stream Input/Output
  • Stream Class Hierarchy for Console Input /Output
  • Unformatted Input /Output
  • Formatted Input /Output with ios Member functions
  • Formatting with Manipulators
  • Stream Operator Overloading
8.2. File Operations
  • File Input/output with Streams
  • Opening and Closing files
  • Read/Write from File
  • File Access Pointers and their Manipulators
  • Sequential and Random Access to File
  • Testing Errors during File Operations

Laboratory Works

  1. 1.Implementing the concepts of Object Oriented Programming using C++ language

Text Books

  1. 1.Robert Lafore, Object Oriented Programming in C++, Fourth Edition, SAMS publications
  2. 2.Herbert Schildt, C++ The Complete Reference, Fourth Edition, Tata McGraw Hill Publication

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

Notes:

Source:

The course covers the basic concepts of object oriented programming using C++ programming language.
The main objective of this course is to understand object oriented programming and advanced C++ concepts such as composition of objects, operator overloads, inheritance and polymorphism, file I/O, exception handling and templates.
Students should be able to implement the concepts of Object Oriented Programming using C++ language.
This syllabus follows the official B.Sc. CSIT curriculum of Tribhuvan University. In case of any doubt or revision, the university's published syllabus shall be considered authoritative.