History and Features of C++
Structure of a C++ Program
Difference between C and C++
Writing, Compiling, and Executing C++ Programs
Input and Output in C++ (cin, cout)
Keywords, Identifiers, Constants
Variables and Scope
Data Types (Basic, Derived, User-defined)
Type Casting
Operators in C++ (Arithmetic, Relational, Logical, Bitwise, Assignment, etc.)
Decision Making: if, if-else, switch
Looping: for, while, do-while
Jump Statements: break, continue, goto
Function Definition and Declaration
Function Arguments and Return Types
Inline Functions
Function Overloading
Default Arguments
Recursion
Principles of OOP (Encapsulation, Abstraction, Inheritance, Polymorphism)
Classes and Objects
Access Specifiers (Public, Private, Protected)
Constructors and Destructors
Static Members and Functions
Types of Inheritance (Single, Multiple, Multilevel, Hierarchical, Hybrid)
Function Overriding
Virtual Base Classes
Constructor Invocation in Inheritance
Compile-time Polymorphism (Function Overloading, Operator Overloading)
Runtime Polymorphism (Virtual Functions)
Abstract Classes
Pure Virtual Functions
Basics of Pointers
Pointers to Objects
this Pointer
References and Reference Variables
Dynamic Memory Allocation (new, delete)
One-Dimensional and Multi-Dimensional Arrays
Array of Objects
String Handling in C++
Introduction to STL vector
File Input/Output Streams
Reading and Writing Files
File Modes (Read, Write, Append)
Sequential and Random File Access
Introduction to Exceptions
try, catch, throw
Multiple Catch Blocks
Exception Handling with Classes
Function Templates
Class Templates
STL Components: Containers, Algorithms, Iterators
Common STL Classes (vector, list, map, set)
Operator Overloading (Unary, Binary)
Friend Functions and Friend Classes
Namespaces
Type Casting in C++
Dynamic Polymorphism
Lambda Expressions (C++11 onwards)
Mini Projects (Banking System, Library Management, Student Record System, Inventory System, etc.)
Debugging and Optimization
Best Practices in C++ Programming
12TH PASS