GITAM University Object Oriented Programming with C++ Syllabus
B.Tech. (CE)II SEMESTER
OBJECT ORIENTED PROGRAMMING WITH C++
Code: EURCS206 Category: BE
Credits: 3 Hours: 3 per week
The Aim of the course is to acquaint the student with C++ and the applications of C++
Basics, Tokens, Expressions: (8 hours)
Software Crisis, Software Evolution, Procedure Oriented Programming, Object Oriented Programming Paradigm, Basic Concepts of OOP, Benefits of OOP, Object Oriented Languages, Features of OOP. How OOP Differ from POP. Applications of OOP, A Simple C++ Program, Structure of C++ Program. Tokens, Keywords, Identifiers and Constants, Basic Data Types, User Defined Data Types, Derived Data Types, Dynamic Initialization of Variables, Reference Variables, Operators in C++, Scope Resolution Operator, Member Dereferencing Operators, Memory Management Operators.
Functions, Classes and Objects: (8 hours)
Introduction to Classes, Specifying a Class, Defining a Member Functions, A C++ Program with Class Access Specifiers, Inline functions, Nesting of Member Functions, Memory Allocation for Objects, Static Data Members, Static Member Functions, Arrays of Objects, Objects as Function Arguments, Default Arguments, Const Arguments, Function Overloading, Friend Functions
Constructors, Destructors, Inheritance: (8 hours)
Introduction, Constructors, Parameterized Constructors, Multiple Constructors in a Class, Constructors with Default Arguments, Dynamic initialization of Objects, Copy Constructors, Dynamic Constructors, Destructors. Introduction to inheritance, Defining Derived Classes, Single Inheritance, Multiple Inheritance, Multi Level Inheritance, Hierarchical Inheritance, Hybrid Inheritance, Abstract Classes, Constructors in Derived Classes, Containership, Operator overloading, Rules for Operator overloading, overloading of binary and unary operators .
Pointers, Virtual Functions and Polymorphism: (8 hours)
Introduction, Memory Management, new Operator and delete Operator, Pointers to Objects, this Pointer, Pointers to Derived Classes, Polymorphism, compile time polymorphism, Run time polymorphism, Virtual Functions, Pure Virtual Functions, Virtual Base Classes, Virtual Destructors.
Templates and Exception handling: (8 hours)
Introduction, Class Templates, Class Templates with Multiple Parameters, Function Templates, Function Templates with Multiple Parameters, Member Function Templates. Basics of Exception Handling, Types of exceptions, Exception Handing Mechanism, Throwing and Catching Mechanism, Rethrowing an Exception, Specifying Exceptions.
Text Book Prescribed :
Object Oriented Programming in C++ by E.Balagurusamy., published by Tata McGraw-Hill.
Reference Book :
1. Mastering C++ by K.R.Venugopal., published by Tata McGraw- Hill.
2. Computer Science A Structural Programming Approach Using C by Behrouz A Forouzan and Richard F. Gilberg, Thomson publishers