- Principles of Object-Oriented Programming
- Beginning with C++
- Tokens, Expressions and Control Structures
- Arrays
- Classes and Objects
- Constructors and Destructors
- Inheritance
- Overloading
- Polymorphism
- Abstraction
- Encapsulation
- Exception Handling
- Templates
- Namespaces
- C++ Stream Classes
1. Principles of Object-Oriented Programming
- Introduction to OOP’s
- Basic Concepts of OOP
- Encapsulation
- Data Abstraction
- Inheritance
- Polymorphism
- Difference between Object-Oriented and Procedural Programming
- Advantages and Disadvantages of OOP
2. Beginning with C++
- Overview of C++
- Advantages of C++
- Rules for C++ Programming
- Writing C++ Program
- Introduction to Function
- cout
- cin
- Header files
- Pre-processor directives
- Creating the Source file
- Compiling and Linking
3. Tokens, Expressions and Control Structures
- Tokens and Keywords
- Identifiers and Constants
- Data Types
- Basic Data Types
- User-Defined Data Types
- Derived Data Types
- Variables
- Variable naming rules
- Declaration of variables
- Assigning values to variables
- Operators and Expressions
- Conditional Statements
- if statement
- if…else statement
- if…else-if…else statements
- Nested-if
- Switch statement
- Looping Statement
- for loop
- while loop
- do_while loop
- Nested loops
4. Arrays
- Array Initialization
- One-dimensional Arrays
- Two-Dimensional Arrays
- Matrix Operations
5. Classes and Objects
- Introduction
- Specifying a Class
- Define C++ Objects
- Defining member functions
- Outside the class definition
- Inside the class definition
- Class access modifiers
- public members
- private members
- protected members
- A C++ Program with class
- Functions in a Class
- Inline Functions
- Friend Functions
- Static Data Members and Functions
6. Constructors and Destructors
- Constructors
- Need for Constructors
- Declaration and Definition
- Default Constructors
- Parameterized Constructors
- Copy Constructor
- Special Characteristics of Constructors
- Destructors
- Need for Destructors
- Declaration and Definition
- Special Characteristics of Destructors
7. Inheritance
- Defining Derived Class
- Single Inheritance
- Making a private member inheritable
- Multilevel Inheritance
- Multiple Inheritance
- Ambiguity Resolution in Inheritance
- Hierarchical Inheritance
- Hybrid Inheritance
- Virtual Base Classes
8. Overloading
- Function Overloading
- Operator Overloading
- Rules for Overloading Operators
9. Polymorphism
- Introduction to Polymorphism
- Types of Polymorphism
- Compile-time Polymorphism
- Run-time Polymorphism
- this pointer
- Virtual Functions
10. Abstraction
11. Encapsulation
12. Exception Handling
- try
- catch
- throw
13. Templates
- Function Templates
- Class Templates
14. Namespaces
- Overview of Namespace
- Namespace Scope
- Defining a Namespace
- The using directive
- Nested Namespaces
15. C++ Stream Classes
- Unformatted and Formatted I/O
- Working with files
- Classes for File Stream Operations
- Opening and Closing a File
- Detecting EOF