AlgoMaster Logo

Course Roadmap

Last Updated: May 17, 2026

1 min read
21 sections154 chapters
Access:
Difficulty:
Priority:
Section / Chapter
Welcome
Course Roadmap
Course Setup
Join the Community
Introduction to C++
What is C++?
History of C++
C++ vs C
Setting Up Environment
First C++ Program
Compilation Process
Basic Syntax
Variables & Data Types
Constants & Literals
Operators
Input & Output
Comments
Type Casting
Control Flow
If-Else Statements
Switch Statement
For Loop
While Loop
Do-While Loop
Range-Based For Loop
Functions
Functions Basics
Function Parameters
Pass by Value vs Reference
Function Overloading
Default Arguments
Inline Functions
Recursion
Lambda Expressions
Arrays & Strings
Arrays
Multidimensional Arrays
C-Style Strings
String Class
String Operations
Pointers & References
Pointers Basics
Pointer Arithmetic
Pointers & Arrays
Pointers & Functions
References
Null Pointers
Smart Pointers Overview
unique_ptr
shared_ptr
weak_ptr
Object-Oriented Programming
Classes & Objects
Access Specifiers
Constructors
Destructors
Copy Constructor
Move Constructor
this Pointer
Static Members
Friend Functions
Operator Overloading
Inheritance
Inheritance Basics
Types of Inheritance
Access Control in Inheritance
Constructor Inheritance
Multiple Inheritance
Virtual Inheritance
Polymorphism
Polymorphism Basics
Virtual Functions
Pure Virtual Functions
Abstract Classes
Virtual Destructors
Runtime Type Info (RTTI)
Templates
Function Templates
Class Templates
Template Specialization
Variadic Templates
Template Metaprogramming
STL Containers
STL Overview
vector
list
deque
array
forward_list
set
multiset
map
multimap
unordered_set
unordered_map
stack
queue
priority_queue
pair & tuple
STL Algorithms
STL Algorithms Overview
Sorting Algorithms
Searching Algorithms
Numeric Algorithms
Modifying Algorithms
Non-Modifying Algorithms
Iterators
Iterators Basics
Iterator Types
Iterator Adapters
Custom Iterators
Exception Handling
Exception Basics
try-catch-throw
Standard Exceptions
Custom Exceptions
Exception Specifications
noexcept Specifier
Memory Management
Stack vs Heap
Dynamic Memory Allocation
new & delete Operators
Memory Leaks
RAII Pattern
File I/O
File Streams
Reading Files
Writing Files
Binary Files
File Positioning
String Streams
Modern C++ (C++11/14/17/20)
auto Keyword
nullptr
Initializer Lists
Uniform Initialization
Move Semantics
Rvalue References
Perfect Forwarding
constexpr
Structured Bindings
std::optional
std::variant
std::any
std::string_view
Filesystem Library
Concurrency
Threads Overview
Thread Creation
Joining & Detaching
Mutexes
lock_guard
unique_lock
Condition Variables
Futures & Promises
std::async
Atomic Operations
Thread Local Storage
Advanced Topics
Preprocessor Directives
Macros
Namespaces
Type Traits
SFINAE
CRTP
Pimpl Idiom
Copy-Swap Idiom
Best Practices
Coding Standards
Const Correctness
Rule of Three/Five/Zero
Avoiding Common Pitfalls
Modern C++ Guidelines
Performance Optimization
Debugging Techniques