Object Oriented Programming Using C++
UNIT-I
Introduction-Review of C, comparison between procedural programming paradigm and
object-oriented programming paradigm, basic concepts of object-oriented programming —
concepts of an object and a class, interface and implementation of a class, operations on
objects, relationship among objects, abstraction, encapsulation, data hiding, inheritance,
overloading, polymorphism, messaging.
Introduction of C++-applications, A simple C++ Program Creating , Compiling, Linking,
Tokens, Expressions, Control Structures, Function in C++-Call by Value,Call by Reference,
Inline Function, Function Overloading, Friend and Virtual Functions.
UNIT-II
Classes and Object- accessing class members, access specifiers, static members, const
keyword, friends of a class, Nesting Member Function, Arrays with in Class, Arrays of
Objects, Objects as function arguments, Returning objects, Pointers and Dynamic Memory
Management: Declaring and initializing pointers, accessing data through pointers, pointer
arithmetic, dynamic memory management using new and delete operators, pointer to an
object, this pointer, pointer related problems - dangling/wild pointers, null pointer
assignment, Pointer to members.
Constructor and Destructors- Need for constructors and destructors, default, parameterized,
copy constructor, dynamic constructors, explicit constructors, destructors, constructors and
destructors with static members.
UNIT-III
Operator Overloading and Type Conversion- Overloading operators, rules for overloading
operators, overloading of various operators, Overloading Unary and Binary Operator,
Overloading Binary Operators using Friend, Manipulation of Strings Using Operators, type
conversion - basic type to class type, class type to basic type, class type to another class type.
Inheritance & Polymorphism- Introduction, defining derived classes, forms of inheritance,
ambiguity in multiple inheritance, Concept of binding - early binding and late binding,
virtual base class, overriding member functions, Abstract Classes, Constructor in Derived
Classes, Pointer to derived classes, this Pointer, Pure Virtual functions.
UNIT-IV
Exception Handling- Review of traditional error handling, basics of exception handling,
exception handling mechanism, throwing mechanism, catching mechanism, rethrowing an
exception, specifying exceptions.
Templates - Template concepts, Function templates, Function templates with Multiple
parameters, class templates, class templates with Multiple parameters, Overloading of
Template functions, Member Function Templates, Non-Type Template Arguments.
UNIT-V
Manipulating Strings-Creating, Manipulating String Object, Accessing Characters in String,
Comparing and Swapping.
Files-File streams, Classes for File Stream Operation, Opening and Closing a file, File
Pointers and their Manipulations, Sequential Input and Output Operator, Updating a File,
Random Access, hierarchy of file stream classes, error handling during file operations,
reading/writing of files.
TEXT BOOKS:
1. Lafore R., Object Oriented Programming in C++, Waite Group.
2. E. Balagurusamy, Object Oriented Programming with C++, Tata McGraw Hill
REFERENCE BOOKS:
1. R. S. Salaria, Mastering Object-Oriented Programming with C++, Salaria Publishing
House.
3. Bjarne Stroustrup, The C++ Programming Language, Addison Wesley.
4. Herbert Schildt, The Complete Reference to C++ Language, McGraw Hill-Osborne.
5. Lippman F. B, C++ Primer, Addison Wesley.
6. R. S. Salaria, Test Your Skills in Object-Oriented Programming With C++, Salaria
Publishing House.