Page 1 of 3
II Year – I SEMESTER T P C
3+1 0 3
OBJECT-ORIENTED PROGRAMMING THROUGH C++
Objectives: Expertise in object oriented principles and their implementation in C++
UNIT I :
Objectives: Exposure to basics of object oriented mode, C++ programming and I/O in C++
INTRODUCTION: Differences Between C And C++, The Object Oriented Technology , Disadvantage of
Conventional Programming, Concepts of Object Oriented Programming, Advantages of OOP Structure of
A C++ Program, Header Files And Libraries
INPUT AND OUTPUT IN C++ :
Introduction, Streams In C++ And Stream Classes, Pre-Defined Streams, Stream Classes, Formatted And
Unformatted Data,Unformatted Console I/O Operations, Member Functions Of Istream Class, Formatted
Console I/O Operations, Bit Fields, Flags Without Bit Field, Manipulators, User Defined Manipulators
UNIT II :
Objectives: Focus on Basic concept in C++ programming, Operators, control structures , functions,
overloading, recursion
Tokens In C++, Variable Declaration And Initialization, Data Types, Operators In C And C++, Scope
Access Operator, Namespace, Memory Management Operators, Comma Operator, Revision Of Decision
Statements, Control Loop Statements
FUNCTIONS IN C++ : Introduction, Structure Of Function, Passing Arguments, Lvalues And Rvalues,
Retrun By Reference, Returning More Values By Reference, Default Arguments, Const Arguments,
Inputting Default Arguments, Inline Functions, Function Overloading, Principles Of Function Overloading,
Recursion
UNIT III :
Objectives: Acquaintance with classes, objects and member functions
CLASSES AND OBJECTS : Introduction, Classes In C++, Declaring Objects, Access Specifiers And
Their Scope, Member Functions, Outside Member Function As Inline, Data Hiding or Encapsulation,
Classes, Objects and Memory, Static Member Variables, Static Member Functions Static Object, Array Of
Objects, Objects As Function Arguments, Friend Functions, The Const Member Functions, The Volatile
Member Function, Recursive Member Function, Local Classes, Empty, Static And Const Classes, Member
Function and Non- Member Function, Overloading Member Functions, Nested Class
UNIT IV :
Objectives: Focus on constructors , destructors, variants in them, operator overloading, type
conversions
CONSTRUCTORS AND DESTRUCTORS : Introduction, Characteristic Of Constructors & Destructors,
Applications With Constructors, Parameterized Constructor, Overloading Constructors (Multiple
Constructors), Array Of Objects Using Constructors, Constructors With Default Arguments, Copy
Constructors, The Const Objects, Destructors, Calling Constructors And Destructors, Qualifier And Nested
Classes, Anonymous Objects, Private Constructors And Destructors, Dynamic Initialization Using
Constructors, Dynamic Operators and Constructors, Recursive Constructor, Constructor and Destructor
With Static Members, Local Vs. Global Object
OPERATOR OVERLOADING AND TYPE CONVERSION : Introduction, Overloading Unary
Operators, Constraint on Increment And Decrement Operators, Overloading Binary Operators, Overloading
With Friend Function, Overloading Assignment Operator (=), Type Conversion, Rules For Overloading
Operators, One Argument Constructor And Operator Function, Overloading Stream Operators
UNIT V :
Objective: Concentration on inheritance, types of inheritance, polymorphism, virtual functions
INHERITANCE : Introduction, Reusability, Access Specifiers And Simple Inheritance, Protected Data
With Private Inheritance, Types Of Inheritances(Single Inheritance, Multilevel Inheritance, Multiple
Inheritance, Hierarchical Inheritance, Hybrid Inheritance, Multipath Inheritance), Virtual Base Classes,
Constructors, Destructors, And Inheritance, Object As A Class Member, Abstract Classes, Qualifier Classes
And Inheritance, Constructor In Derived Class, Pointers And Inheritance, Overloading Member Function,
Advantages Of Inheritance, Disadvantages Of Inheritance.
Page 2 of 3
BINDING, POLYMORPHISM AND VIRTUAL FUNCTIONS: Introduction, Binding In C++, Static
(Early) Binding, Dynamic (Late) Binding, Pointer To Base And Derived Class Objects, Virtual Functions,
Rules For Virtual Functions, Array Of Pointers, Pure Virtual Functions, Abstract Classes, Working Of
Virtual Functions, Virtual Functions In Derived Classes, Object Slicing, Constructors And Virtual
Functions, Virtual Destructors, Destructor And Virtual Functions.
UNIT VI :
Objectives: Focus on Files, File operations, generic programming, templates, function templates,
Exception handling
APPLICATIONS WITH FILES: Introduction, File Stream Classes, File Opening Modes, File Pointers
And Manipulators, Manipulators With Arguments, Sequential Access Files, Binary And ASCII Filesrandom
Access Operation,
GENERIC PROGRAMMING WITH TEMPLATES : Introduction, Need Of Template, Definition Of
Class Template, Normal Function Template, Working Of Function Templates, Class Template With More
Parameters, Functions Templates With More Arguments, Overloading Of Template Functions, Member
Function Templates,Recursion With Template Function, Class Template With Overloaded Operators, Class
Template Revisited, Class Templates And Inheritance, Container Classes , Types Of Containers, Container
Adaptors, Iterators
EXCEPTION HANDLING : Introduction, Principles Of Exception Handling,The Keywords Try, Throw
And Catch , Exception Handling Mechanism, Multiple Catch Statements, Catching Multiple Exceptions, Re- Throwing Exception, Specifying Exception, Exceptions In Constructor And Destructors, Controlling
Uncaught Exceptions, Class Template With Exception Handling
TEXT BOOKS :
1. Programming In C++ , Ashok N Kamthane. Pearson 2
nd Edition.
2. Object Oriented Programming C++ , Joyce Farrell, Cengage
3. Mastering C ++, Venugopal, Rajkumar, Ravi kumar TMH
4. Object Oriented Programming with C++, 2
nd ed, Sourav Sahay, OXFORD
REFERENCE BOOKS:
1. The Complete Reference, C++, 4ed, Herbert Schildt, TMH