We can't find the internet
Attempting to reconnect
Something went wrong!
Attempting to reconnect
C++ learning tracks
C++Guided sequences that interleave written explainers with the problems that apply them. Tracks remember how far you got, and you can work one with friends as a squad. For a plain ordered run of problems, see the roadmap.
-
Orientation and the Gate
0 / 3
What "graded" means here, before any C++ is taught. A program that compiles, passes every test and still fails — so the rule is learned once rather than resented later.
-
Values, Types, Initialisation
0 / 4
The layer everything else sits on, and the one where C's defaults are still wrong forty years later. Fixed-width integers, narrowing, signedness, and what
autoactually deduces. -
RAII: Objects With Lifetimes
0 / 4
The one idea. Smart pointers, locks, exception safety and the rule of zero are all this wearing a different hat, which is why it comes before any of them.
-
Copy, Move, and the Rule of Zero
0 / 5
Where C++ stops resembling other languages. Before containers on purpose: a learner who has not felt the cost of a copy reads
performance-*as nagging rather than as arithmetic. -
References, Pointers, Ownership
0 / 4
Who owns this, and who is merely looking at it — answered in the signature with a type rather than in a comment nobody reads.
-
Containers, Strings, Algorithms
0 / 5
The standard library read as a set of cost promises rather than a menu of names. Growth, borrowing, one lookup instead of two, and the loop that stops having bugs once it has a name.
-
Const Correctness and Class Design
0 / 3
The public surface is the API, and what it permits is what callers will do.
constas a promise the compiler enforces, and the constructor that converts behind your back. -
Errors
0 / 4
Failure as part of the type. The three honest answers to "this can go wrong" — return it, throw it, or refuse to continue — and how to tell which one you are looking at.