Jared's Modern C++ Examples

A single entry point for Jared Bruni's C++ learning repositories, covering the transition from C++11 through C++17 and into C++20/C++23. Each section links to a full offline documentation site with searchable tree navigation, feature summaries, and syntax-highlighted source.

C++11 Documentation

Core modern C++ foundations: move semantics, lambdas, auto, smart pointers, and the standard threading model.

Open C++11 Docs

C++17 Documentation

Practical language refinements: structured bindings, if constexpr, std::optional/std::variant, and filesystem utilities.

Open C++17 Docs

C++20 / C++23 Documentation

Latest-generation features: ranges, concepts, coroutines, format/span, and newer standard library evolution.

Open C++20/C++23 Docs

What these repositories represent

These projects are hands-on example collections rather than formal textbook chapters. They show how language features are used in real code, with a mix of focused experiments and larger sample programs. The documentation pages in each subfolder are generated from source, so you can browse by directory and inspect code with line numbers and feature metadata.

The three tracks are organized chronologically to make the language progression clearer: C++11 for the foundational modernization wave, C++17 for maturity and ergonomics, and C++20/C++23 for major expressiveness and library expansion.

Background: C++ and Modern C++

C++ began as "C with Classes" and evolved into a systems language focused on performance, control, and portability. It became widely used for graphics engines, operating-system components, embedded systems, scientific computing, finance, networking, and toolchains where predictable performance and explicit resource management are critical.

The term Modern C++ usually refers to the standards era starting with C++11, when the language and standard library received substantial upgrades aimed at safer abstractions and clearer code without sacrificing speed. Instead of relying mostly on macros and manual ownership patterns, developers gained language-level tools for expressing intent directly.

In practice, modern C++ is less about "new syntax" and more about writing robust code with explicit ownership, composable abstractions, and strong compile-time guarantees.

How to use this index

This bundle is fully local/offline: highlight assets and data files are included under each subfolder.