C++ Resources
- A Complete Guide to Programming in C++ by Ulla Kirch-Prinz and Peter Prinz
- The Definitive C++ Book Guide and List
- Lospinoso, Josh C++ Crash Course A Fast-Paced Introduction
- Williams (2012) C++ Concurrency in Action
- C++ reference - cppreference.com
- Some core C++ language features:
- Didactic Material
- Microsoft Learn
- C++ documentation â DevDocs
- C++ Language from cplusplus.com
- cplusplus.com/doc/tutorial/program_structure/
- C++ Standard Library headers - cppreference.com
- Valgrind:
- GCC:
- libstdc++ Source: Main Index
- C++ Best Practices:
- Introduction · C++ Best Practices
- C++ Best Practices | Erik Rigtorp
- C++ Coding Standards: 101 Rules, Guidelines, and Best Practices
- cpp-best-practices/cppbestpractices: Collaborative Collection of C++ Best Practices. This online resource is part of Jason Turnerâs collection of C++ Best Practices resources. See README.md for more information.
- Google C++ Style Guide
- Practical / Task-Oriented Guides:
- Professor Hank Stalicaâs channel has several playlists on C++ basics
Concepts
- RAII - cppreference.com
- Why doesnât C++ provide a âfinallyâ construct? in Stroustrup C++ Style and Technique FAQ
Libraries
- Abseil - Abseil is an open source collection of C++ libraries drawn from the most fundamental pieces of Googleâs internal codebase. These libraries are the nuts-and-bolts that underpin almost everything Google runs.
- Consult our Abseil Introduction
- Run through the Abseil C++ Quickstart
- Read Why Adopt Abseil to understand our design philosophy
- Peruse our Abseil Compatibility Guidelines to understand both what we promise to you, and what we expect of you in return.
- Understand Abseil Release Management to identify how to use Abseil within your particular development environment.
C++ Build Systems
See also Build Systems
Context
Articles & Talks
- When Nanoseconds Matter Ultrafast Trading Systems in C++ - David Gross - CppCon 2024 - YouTube
- Make your own GUI apps in C++ (with ImGui and Vulkan) - YouTube - The Cherno
- Make Beautiful Desktop Applications in C++ - The Cherno
- Stop using stdvector wrong - The Cherno - great discussion of use of
std::vector
(heap-allocated; dynamically sized) vsstd::array
(stack-allocated; fixed size) and how to minimise allocations, copies and moves in C++ - Maps in C++ (stdmap and stdunordered_map) - YouTube