Object Oriented Programming - CS25C07

[ 3rd Semester - IT - Information Technology Department ]

Under Class: | 3rd Semester [IT Dept Anna University 2025 Regulation] |

Object Oriented Programming - CS25C07 - Study Materials, Notes, Important Questions, Anna University Semester Question Paper PDF Download

Engineering - Object Oriented Programming - CS25C07 Subject (under Anna University 3rd Semester - IT - Information Technology Department Regulation 2025) - Study Materials, Written and lecture Notes, Important Questions, Semester Question Paper PDF Download




CS25C07:

Object Oriented Programming

 

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.

 

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:

1. Simple programs to using Operators, and type conversion.

2. Programs using Conditional and Loop statements and loops.

 

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:

1. Programs using in-line and friend functions.

2. Programs using constructors and destructors

 

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:

1. Programs for inheritance and its types.

2. Programs using friend function and operator overloading.

 

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:

1. Programs for pointer manipulation.

2. Programs for virtual functions.

 

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

Practical:

1. Programs using function and class templates.

2. Programs using exception handling.

 

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 Activities

1. Programs for error handling in file and I/O management

2. Develop applications using OOP features.

 

Weightage: Continuous Assessment: 40%, End Semester Examinations: 60%

Assessment Methodology: Quiz (5%), Assignments (10%), Flipped Classroom (5%), Project (20%), Review of GATE questions (10%) & Internal Assessment (50%).

 

References:

1. Deitel, P., & Deitel, H. (2024). C++ how to program: An objects-natural approach. Pearson Education.

2. Bronson, G. (2011). A first book of C++. Course Technology Inc.

3. Balagurusamy, E. (2020). Object oriented programming with C++. McGraw Hill Education.

 

eResources / eMaterials

1. https://en.cppreference.com/w/cpp

2. https://youtu.be/M-mKgBHaMb0?si=1I-pEiAFgwwBA8IC