CS25C07 Object Oriented Programming – Semester II – CSE / CSBS / CCE / CSE(DS) / CSE(IoT) / CSE(Cyber) / CSE(AI&ML) / CSE(AI) / CSD – R-2025

Subject Code & Name: CS25C07 – Object Oriented Programming

Regulation: R-2025

Semester: II (Second Semester)

Branch: B.E. CSE (CSE)

Credits / L-T-P: 5 Credits | L-T-P: 3-0-4

Course Objectives

  • To impart the principles of object-oriented programming and their advantages over procedural programming.
  • To develop problem-solving skills by creating real-world applications using OOP features.

Full Unit-wise Syllabus

Unit I – Principles of Object-Oriented Programming

Characteristics of object-oriented languages, C++ Program structure, Procedure Oriented Programming vs Object Oriented Programming, C++ constructs and syntax, tokens, variables, data-types, type conversion, operators, Expressions, Namespace, flow Control and decision making statements.

Practical: Simple programs using Operators and type conversion; Programs using Conditional and Loop statements.

Unit II – Classes and Objects

Abstraction mechanism: Classes, Objects, member data, member functions – Constructors and types – destructors, inline function, friend function – array of objects, objects as function arguments – memory allocation for objects, static members static data and static function.

Practical: Programs using in-line and friend functions; Programs using constructors and destructors.

Unit III – Inheritance and Compile Time Polymorphism

Inheritance: Derived Classes – Single inheritance – Multilevel Inheritance – Multiple Inheritance – Hierarchical inheritance – Hybrid inheritance. Operator Overloading: Compile time Polymorphism – Overloading Functions, Overloading Operators, Overloading Unary Operators – Overloading Binary Operators – Operator Overloading with Friend Functions.

Practical: Programs for inheritance and its types; Programs using friend function and operator overloading.

Unit IV – Pointers and Runtime Polymorphism

Pointers with arithmetic operations – this pointer – Pointers to Derived classes and Base classes – Compile time versus Runtime Polymorphism – Virtual functions – Late Binding – Abstract classes – Pure virtual functions and Virtual Destructors – Virtual base class.

Practical: Programs for pointer manipulation; Programs for virtual functions.

Unit V – Templates and Exception Handling

Class Templates – Function Templates – Overloading of Template Functions – String, iterators, hashes, IO streams; Exception Handling.

Practical: Programs using function and class templates; Programs using exception handling.

Unit VI – I/O Systems and File I/O

C++ Streams – Formatted and Unformatted I/O – File stream classes – File modes – File operations, Sequential Read / Write operations – Binary and ASCII Files – Error handling in file I/O with member function.

Practical: Programs for error handling in file and I/O management; Develop applications using OOP features.

Course Outcomes (COs)

  • CO1: Understand the core OOP concepts and applications.
  • CO2: Apply Object Oriented Paradigms to solve problems using C++.
  • CO3: Design and Analyze solutions involving code reusability and complexity management.
  • CO4: Demonstrate life-long learning skills through application development.

Assessment Pattern (Quick Note)

  • Weightage: Continuous Assessment 40% | End Semester Examinations 60%
  • Internal methodology: Quiz (5%), Assignments (10%), Flipped Classroom (5%), Project (20%), Review of GATE questions (10%) & Internal Assessment (50%)

Source: Official Anna University – B.E. Computer Science and Engineering R-2025 Syllabus
Last Updated: September 2026

Comments