Guide Book
Guide Book
A reference you can read front to back or dip into. Every chapter explains the syntax, and most topics have a π Behind the scenes section you can open to see what Python is actually doing, the details classes usually skip. Look for π§ Scenario cards for real-world uses, and press Try it on any example, then open the Inspect tab to look inside.
- Chapter 1How C++ builds and runsPreprocess, compile, assemble, link β four steps, and why an error in each one looks completely different.
- Chapter 2Types & initialisationThe fundamental types, `auto`, the four initialisation syntaxes and why braces are the safe default.
- Chapter 3Objects, lifetime & memoryStack versus heap, scope and destruction order, dangling references, and the deterministic destruction that makes RAII possible.
- Chapter 4References & pointersThe difference between a second name and an address, `const` in all its positions, and how to choose a parameter type.
- Chapter 5RAII & smart pointersThe idea that makes C++ safe without a garbage collector β tie every resource to an object's lifetime, and let the destructor do the rest.
- Chapter 6Copy, move & value semanticsWhat the compiler generates for you, lvalues and rvalues, what `std::move` actually does, and the rule of five and zero.
- Chapter 7Classes & inheritanceAccess control, constructors and member initialisation, virtual dispatch and the vtable, and when inheritance is the wrong tool.
- Chapter 8TemplatesCompile-time code generation β function and class templates, deduction, specialisation, `constexpr if`, and C++20 concepts.
- Chapter 9Containers & algorithmsChoosing the right container, the iterator model that connects them to the algorithms, and the algorithms worth knowing by name.
- Chapter 10Strings, views & ranges`std::string` and its cheap non-owning view, formatting with `std::format`, and the C++20 ranges that finally made algorithms composable.
- Chapter 11Error handlingExceptions and the guarantees they come with, `std::optional` and `std::expected`, assertions, and when each is the right tool.
- Chapter 12Modern C++ & toolingLambdas, `std::optional`/`variant`/`any`, structured bindings, the features that changed how C++ is written β and the tools that keep it honest.