Learn C++ from Scratch
The complete beginner's path through C++. Each guide builds on the last — follow them in order and you'll go from zero to writing real programs with confidence.
Stage 1: Getting Started
Install a compiler, write your first program, and understand what C++ is actually used for.
- 1 What Is C++ Used For? Practical Applications Explained
Understand why C++ matters — where it's used in the real world before you write a single line.
- 2 How to Start Learning C++: A Beginner's Setup Guide
Install a compiler, pick an IDE, and get your environment ready to code.
- 3 C++ Hello World Explained Line by Line
Your first program — every line explained so nothing is mysterious.
- 4 C++ Learning Roadmap: What to Learn and In What Order
The full picture — a structured path from beginner to advanced topics.
Stage 2: Core Language Fundamentals
The building blocks every C++ program uses — master these before anything else.
- 5 C++ Variables and Data Types: A Complete Beginner's Guide
int, double, char, string, bool — the types you'll use in every program.
- 6 C++ Conditionals Tutorial: if, else, and switch Explained
Make your program make decisions — if/else, else-if chains, switch, and the ternary operator.
- 7 C++ Loops Tutorial: for, while, and do-while Explained
Repeat code efficiently — for loops, while loops, break, continue, and the range-based for loop.
- 8 C++ Functions Tutorial: How to Write and Use Functions
Organise code into reusable blocks — parameters, return types, overloading, and recursion.
- 9 C++ Arrays Tutorial: Store and Access Multiple Values
Fixed-size collections — declaration, initialization, iteration, and multi-dimensional arrays.
Stage 3: Pointers and Memory
What makes C++ different from every other language — and what makes it powerful.
- 10 How to Use Pointers in C++: A Complete Beginner's Guide
The mental model that makes pointers click — addresses, dereferencing, null pointers, and references.
- 11 Memory Management in C++: Heap vs Stack, new/delete, and Memory Leaks
How the stack and heap work, when to use new/delete, and how to prevent memory leaks.
- 12 Smart Pointers in Modern C++: unique_ptr, shared_ptr, and weak_ptr
The modern replacement for raw pointers — automatic memory management without garbage collection.
Stage 4: Object-Oriented Programming
Model real-world problems with classes, inheritance, and polymorphism.
- 13 C++ Classes and Objects: A Beginner's Guide to OOP
Define your own types — constructors, member variables, methods, and access control.
- 14 OOP in C++: Inheritance, Encapsulation, and Polymorphism Explained
The four pillars of object-oriented programming applied to real C++ code.
- 15 Virtual Functions and Polymorphism in C++ Explained
Runtime polymorphism — how virtual functions and the vtable actually work.
Stage 5: The Standard Library
C++'s built-in containers and algorithms — the tools you'll use in every real project.
- 16 C++ Vector Tutorial: The Complete Guide to std::vector
The most-used container in C++ — dynamic arrays, iteration, sorting, and memory management.
- 17 C++ map and unordered_map Tutorial: Key-Value Storage Explained
Look up values by key in O(log n) or O(1) — when to use each and how to use both.
- 18 C++ String Handling: std::string, string_view, and Performance Tips
Everything about strings — methods, concatenation, searching, and modern string_view.
- 19 C++ STL Containers Explained: Choosing the Right Container
vector, list, deque, set, map, stack, queue — which to pick and why.
Stage 6: Modern C++ Features
C++11 and beyond — the features that make modern C++ fast, safe, and expressive.
- 20 C++ Move Semantics Explained: rvalue References, std::move, and Performance
Transfer ownership instead of copying — one of the biggest performance wins in modern C++.
- 21 C++ Templates Explained: Write Code That Works with Any Type
Generic programming — write a function or class once, use it with any type.
- 22 Exception Handling in C++: try, catch, and throw Explained
Handle errors gracefully — exceptions, custom exception classes, and RAII.
- 23 C++ Concurrency Tutorial: Threads, Mutex, and Thread Safety Explained
Write programs that run on multiple CPU cores — std::thread, mutex, lock_guard, and atomics.
Apply It: C++ Projects
Solidify everything by building real programs — fully annotated source code included.
- ★ Build a Blackjack Game in C++ Using Classes
A complete card game that applies OOP, vectors, and logic in one project.
- ★ C++ Traffic Light Simulation Project
State machines, enums, and timing — a practical beginner project.
- ★ C++ Lottery Program: Random Numbers and Probability
Learn random number generation, vectors, and sorting through a fun project.
- ★ Merge Sort in C++: Implementation and Explanation
A classic algorithm — recursion, divide and conquer, and O(n log n) explained.
Ready to Go Deeper?
The C++ Better Explained Ebook covers everything on this page and more — with clear explanations, real code, and a beginner-first approach. Just $19.
Get the Ebook — $19 →