SYLLABUS
PCCS2207 Object Oriented Programming
Module I
Introduction to object oriented programming, user defined types, structures, unions,
polymorphism, encapsulation. Getting started with C++ syntax, data-type, variables,
strings, functions, default values in functions, recursion, namespaces, operators, flow
control, arrays and pointers.
Module II
Abstraction mechanism: Classes, private, public, constructors, destructors, member data,
member functions, inline function, friend functions, static members, and references.
Inheritance: Class hierarchy, derived classes, single inheritance, multiple, multilevel,
hybrid inheritance, role of virtual base class, constructor and destructor execution, base
initialization using derived class constructors.
Polymorphism: Binding, Static binding, Dynamic binding, Static polymorphism: Function
Overloading, Ambiguity in function overloading, Dynamic polymorphism: Base class
pointer, object slicing, late binding, method overriding with virtual functions, pure virtual
functions, abstract classes.
Operator Overloading: This pointer, applications of this pointer, Operator function,
member and non member operator function, operator overloading, I/O operators.
Exception handling: Try, throw, and catch, exceptions and derived classes, function
exception declaration, unexpected exceptions, exception when handling exceptions,
resource capture and release.
Module III
Dynamic memory management, new and delete operators, object copying, copy
constructor, assignment operator, virtual destructor.
Template: template classes, template functions.
Standard Template Library: Fundamental idea about string, iterators, hashes, iostreams
and other types.
Namespaces: user defined namespaces, namespaces provided by library.
Object Oriented Design, design and programming, role of classes.
Text Books:
1. Object Oriented Programming with C++ by E. Balagurusamy, McGraw-Hill
Education (India)
2. ANSI and Turbo C++ by Ashoke N. Kamthane, Pearson Education
Reference Books:
1. Big C++ - Wiley India
2. C++: The Complete Reference- Schildt, McGraw-Hill Education (India)
3. C++ and Object Oriented Programming – Jana, PHI Learning.
4. Object Oriented Programming with C++ - Rajiv Sahay, Oxford
5. Mastering C++ - Venugopal, McGraw-Hill Education (India)