- Introduction of Object Oriented Programming
Software Evolution
A Look at Procedure Oriented Programming
Object Oriented Programming Paradigm
Basic Concepts of Object Oriented Programming
Benefits of OOP
Object Oriented Languages
Applications of OOP - Tokens, Expressions and Control Statements
Introduction
Tokens
Keywords
Identifiers and Constants
Basic Data Types
User-Defined Data Types
Derived Data Types
Declaration of Variables
Operators in C++
Scope Resolution Operator
Memory Management Operator
Type Cast Operator
Implicit Conversions
Operator Overloading
Operator Precedence
Control Structures
Case Studies - Classes and Objects
Introduction
Defining Member Functions
A C++ Program with Class
Making an Outside Function Inline
Nesting of Member Functions
Private Member Functions
Arrays within a Class
Memory Allocation for Object
Static Data Members
Static Member Functions
Arrays of Objects
Objects as Function Arguments
Friendly Function
Returning Objects
Case Studies - Operator Overloading and Type Conversions
Introduction
Defining Operator Overloading
Overloading Unary Operator
Overloading Binary Operator
Rules for Overloading Operators
Type Conversions
Case Studies - Pointers, Virtual Functions and Polymorphism
Introduction
Pointers
Pointers to Objects
This Pointers
Pointers to Derived Classes
Virtual Functions
Pure Virtual Functions
Case Studies - Working with Files
Introduction
Classes for File Stream Operators
Opening and Closing a File
Detecting end – of –file
File Pointers and their Manipulations
Updating File
Case Studies - Exception Handling
Introduction
Basics of Exception Handling
Exception Handling Mechanism
Throwing Mechanism
Catching Mechanism
Re throwing an Exception
Case Studies - Beginning with C++
Applications of C++
Structure of C++ program
A Sample C++ program
An Example with a class
Creating a Source File
Compiling and Linking
Case Studies - Functions in C++
Introduction
The Main Function
Function Prototype
Call by Reference
Inline Functions
Default Arguments
Function Overloading
Friend and Virtual Functions
Math Library Functions
Case Studies - Constructors and Destructors
Introduction
Constructors
Parameterized Constructors
Multiple Constructors in a class
Constructors with Default Arguments
Dynamic Initialization of Objects
Copy Constructors
Destructors
Case Studies - Inheritance: Extending Classes
Introduction
Defining Derived Classes
Single Inheritance
Multi level Inheritance
Multiple Inheritances
Hierarchical Inheritance
Hybrid Inheritance
Virtual Base classes
Abstract Classes
Constructors in Derived Classes
Case Studies - Managing Console Input/Output Operations
Introduction
C++ Streams
C++ Stream Classes
Unformatted I/O Operations
Formatted Console I/O Operations
Case Studies - emplates
Introduction
Class Templates
Class Templates with Multiple Parameters
Function Templates
Function Templates with Multiple Parameters
Member Function Templates
Case Studies - Manipulating Strings
Introduction
Creating String Object
Manipulating String Objects
Relational Operators
String Characteristics
Accessing Characters in String
Comparing and Swapping
Case Studies