Back to Blog
Programming/11 parts
C++ Programming
A walk through C++ from memory layout to the modern standards, with the machine underneath kept in view. Reference reading: C++ Primer Plus and CS:APP.
- 01C++ #1 Data and MemoryHow C++ lays data out in memory: the built-in types, their storage sizes, literals, and the conversions the compiler performs for you.2024-01-02 · 10 min read
- 02C++ #2 Struct and UnionAggregating data with struct and union — member layout, padding and alignment, and when a union is the right tool rather than a trick.2024-01-14 · 8 min read
- 03C++ #3 Pointers and ArraysPointers hold addresses, nothing more. Declaration syntax, pointer arithmetic, the array–pointer relationship, and dynamic allocation with new and delete.2024-01-28 · 6 min read
- 04C++ #4 FunctionsPrototypes, the three ways to pass an argument, function pointers, inlining, overloading and templates — plus what each one costs at runtime.2024-02-11 · 15 min read
- 05C++ #5 Objects and ClassesHow a class lands in memory: construction and destruction order, the this pointer, initializer lists, and what const member functions actually constrain.2024-02-25 · 5 min read
- 06C++ #6 InheritanceWhat inheritance actually does: subobject layout, the three inheritance accesses, the constructor/destructor chain, and the diamond problem.2024-03-10 · 5 min read
- 07C++ #7 Copy Control and Operator OverloadingCopying, moving and operator overloading: the rules of three and five, deep versus shallow copy, and why swap makes assignment exception-safe.2024-03-24 · 6 min read
- 08C++ #8 PolymorphismDynamic polymorphism through virtual functions and the vtable, why destructors need to be virtual, and the static polymorphism templates give you for free.2024-04-07 · 9 min read
- 09C++ #9 C++11 New FeaturesThe release that changed how C++ is written: auto, range-based for, smart pointers, lambdas, move semantics, nullptr, constexpr and variadic templates.2024-04-21 · 9 min read
- 10C++ #10 C++14 New FeaturesC++14 is a patch release: generic lambdas, return type deduction, make_unique, and the small repairs that made C++11 comfortable to use.2024-06-09 · 5 min read
- 11C++ #11 C++17 New FeaturesC++17: structured bindings, if constexpr, string_view, optional and variant — the features that actually change how you write code every day.2024-06-23 · 5 min read