Course Duration in Hours
90
90
Chapter 1: Perspective
The Software Crisis
Design Techniques
Large Software Systems
Roots of Object Technology
What Is Object-Oriented Programming?
C++ and Object-Oriented Programming
Why C++?
Features of C++
Pros and Cons of C++
Chapter 2: The Language of Object-Orientation
What Is an Object?
What Is a Class?
Encapsulation
Data Hiding
The Public Interface
Relationships Among Classes
Inheritance
Polymorphism
Object-Oriented Design
Chapter 3: C vs. C++
Comments
Namespaces
Simple Output
Simple Input
Definitions Near to First Use
Function Prototypes
The inline Specifier
const
Structure Members
The Reference Type
Overloading Function Names
Default Parameters
The Scope Resolution Operator
Aggregates
Operators new and delete
The bool Data Type
The string Data Type
Chapter 4: Fundamentals of Classes
Data Types
User Defined Data Types
Using the Class Concept
Defining a Class
public and private Access Levels
The Scope Resolution Operator ::
Using Class Objects Like Built-in Types
Scope
Constructors
Member Initialization Lists
Destructors
Array of Objects
Pointers
The this Pointer
Passing Objects to Functions
Returning Objects From Functions
static Class Members
Chapter 5: Operator Overloading
Introduction
Rules for Operator Overloading
Rationale for Operator Overloading
Overloading Member Functions
Overloading Non-Member Functions
friend Functions
The Copy Constructor
The Assignment Operator
Overloading [ ]
Overloading Increment and Decrement Operators
const Objects and References
Chapter 6: Composition of Classes
Relationships
Composition of Classes
The Point Class
The Line Class
Member Initialization Lists
An Application With Composition
The Copy Constructor under Composition
operator= under Composition
Chapter 7: Inheritance
Introduction
Public Base Classes
The protected Access Level
Member Initialization Lists
What Isnt Inherited
Assignments Between Base and Derived Objects
Compile-Time vs. Run-Time Binding
virtual Functions
Polymorphism
virtual Destructors
Pure virtual Functions
Abstract Base Classes
An Extended Inheritance Example
Chapter 8: I/O in C++
The iostream Library
Predefined Streams
Overloading operator<<
Overloading operator>>
Manipulators
Stream States
Formatted I/O
Disk Files
Reading and Writing Objects
Chapter 9: Advanced Topics
Template Functions
Template Classes
Multiple Inheritance
User-Defined Conversions
Data Structures
An Iterator Class
Exceptions
Chapter 10: Introduction to the Standard Template Library
Introduction
The Standard Template Library
Design Goals
STL Components
Iterators
Example: vector
Example: list
Example: set
Example: map
Example: find
Example: merge
Example: accumulate
Function Objects
Adaptors
Appendix A: Introduction
Background
Environmental Considerations
A Sample C Program
Variables and Data Types
Arrays
Example of a Program Using an int Array
Components of a C Program
C Operators
Examples of the Operators
Control Structures
Functions
Function Prototypes
Simple I/O
Appendix B: More I/O in C
The printf Function
The scanf Function
The Preprocessor
Conditional Compilation
Avoiding Multiple Inclusion for the Same File
Appendix C: Aggregates in C
Data Types Revisited
Aggregate Types
Arrays
Structures
Structures and Functions
Bit Fields
Enumeration Types
Appendix D: Pointers in C
Fundamental Concepts
Pointer Operations
Using Pointers to Alter a Function Argument
Using Pointers for Array Traversal
Pointer Arithmetic
Sending an Array to a Function
Command Line Arguments
Pointers vs. Arrays
Sending an Aggregate to a Function
Summary of the Uses of Pointers
10+ 2, Graduate
Acesoftech Academy, Topsia Road (Kolkata),Kolkata,IN