ISO C++ Resources ↩
This document gathers ISO C++ related resources that caught our attention. |
- Using GCC with MinGW, January 2022.
- C++: generating a native interface automatically by Christophe de Dinechin, February 2021.
- The Edge of C++ by Deák Ferenc, October 2020.
- Internals of Compiling - Journey from C/C++ program to an Executable by Adwaith Gautham, June 2018.
- Mixing C and C++ Code in the Same Program by Stephen Clamage, February 2011.
- The C Family of Languages: Interview with Dennis Ritchie, Bjarne Stroustrup, and James Gosling, July 2000.
Blogs ▴
-
- What is std::ref?, August 2024.
- What to do if you don't want a default constructor?, July 2024.
- Struct initialization, November 2023.
-
- C++23 “Pandemic Edition” is complete, February 2023.
- Autumn ISO C++ standards meeting (Kona) by Herb Sutter, November 2022.
-
- Understanding the different flavors of Clang C and C++ compilers in Windows by X, October 2022.
-
- C++20 idioms for parameter packs, June 2022.
- C++ value categories and decltype demystified, June 2021.
- Recursive macros with C++20 , June 2021.
- My tutorial and take on C++20 coroutines, February 2021.
-
- When you cannot call hidden friends in C++, October 2022.
- Type erased view types in C++, September 2022.
- Macros usages in C++, October 2021.
- C++ performance guidelines, January 2021.
- Detect member variables since C++11, June 2019.
-
- What’s New for C++ Developers in Visual Studio 2022 17.11 by Sy Brand, August 2024.
- Documentation for C++20 Ranges by Sy Brand and Tyler Whitney, April 2023.
- Code Analysis Improvements in Visual Studio 17.6 by Gabor Horvath, March 2023.
- Convert Macros to Constexpr by Augustin Popa, June 2018.
-
Modernes C++ by Rainer Grimm :
- Type Erasure, April 2022.
- Software Design with Traits and Tag Dispatching, March 2022.
- Mixins, March 2022.
-
Modern C++ In-Depth by Ralph Kootker :
- Transparent Comparisons, June 2023.
- Literal Operators and User-Defined Literals, March 2023.
- Lambdas, Part 3, February 2023.
- Lambdas, Part 2, January 2023.
- Lambdas, Part 1, November 2022.
- Perfect Forwarding, May 2022.
- Move Semantics, Part 2, March 2022.
- Move Semantics, Part 1, March 2022.
-
- The Interesting Evolution of std::equal_range, January 2022.
- The Evolutions of Lambdas in C++14, C++17 and C++20, December 2021.
- Strong Types for Safe Indexing in Collections – Part 2, November 2021.
- Strong Types for Safe Indexing in Collections – Part 1, October 2021.
- How to Define Comparison Operators by Default in C++, August 2021.
- Extended Aggregate Initialisation in C++17, July 2021.
- How to Return Several Values from a Function in C++, July 2021.
-
The Old New Thing Blog (Microsoft) :
- Compiler error message metaprogramming: Helping to find the conflicting macro definition by Raymond Chen, December 2021.
-
The C++ Programming Language by Bjarne Stroustrup, October 2021.
-
cstdlib in C++ – Explained by Dori Exterman, September 2021.
-
C++ Sets Explained by Audacity Team, May 2021.
-
How to use type traits? by Sandor Dargo, Apri 2021.
-
Structures and classes in C++ by Colin Walls, September 2020.
-
C++ Lambda Under the Hood by EventHelix, June 2019.
-
- Lazy initialization in C++ by Shone Binu.
- Advanced C++ topics by Reshma Patil.
- Different ways to terminate a program in C++ by Subhrajit Dhar.
- Struct inheritance in C++ by Harshit Raj.
-
- C/C++ Programming Abstractions for Parallelism and Concurrency - Part 2, August 2023.
- C/C++ Programming Abstractions for Parallelism and Concurrency - Part 1, August 2023.
- New C++ features in GCC 13 by Marek Polacek, June 2023.
- New C++ features in GCC 13 by Marek Polacek, June 2023.
- 2022 Fall C++ Standards Committee Meeting trip report, February 2023.
- C# 11: 5 new advanced features improving C# 11 by Tom Deseyn, January 2023.
- C# 11: Pattern matching and static abstract interfaces by Tom Deseyn, January 2023.
- C# 11: Raw strings, required members, and auto-default structs by Tom Deseyn, November 2022.
- New C++ features in GCC 12 by Marek Polacek, April 2022.
- The state of static analysis in the GCC 12 compiler by David Malcolm, April 2022.
- Enforce code consistency with clang-format by Serge Guelton, February 2022.
- Porting your code to C++17 with GCC 11 by Marek Polacek, August 2021.
- Optimizing the Clang compiler’s line-to-offset mapping by Serge Guelton, May 2021.
- Memory error checking in C and C++: Comparing Sanitizers and Valgrind by Jan Kratochvil, May 2021.
- New C++ features in GCC 10 by Marek Polacek, September 2020.
- The joys and perils of aliasing in C and C++, Part 2 by Martin Sebor, June 2020.
- The joys and perils of C and C++ aliasing, Part 1 by Martin Sebor, June 2020.
- New C++ features in GCC 12 by Marek Polacek, April 2022.
- Static analysis in GCC 10 by David Malcolm, March 2020.
-
C++11 threads, affinity and hyperthreading by Eli Bendersky, January 2016.
-
Variadic templates in C++ by Eli Bendersky, October 2014.
Books ▴
- The C++ Standard Library (4th Ed.) by Rainer Grimm, March 2023.
(Leanpub, 344 pages) - A Tour of C++ (3rd Ed.) by Bjarne Stroustrup, September 2022.
(Addison-Wesley, ISBN 978-0-13-681648-5, 320 pages) - Beautiful C++ by Guy Davidson and Kate Gregory, May 2022.
(Addison-Wesley, ISBN 978-0-13-764784-2, 346 pages) - Concurrency_with Modern C++ by Rainer Grimm, February 2022.
(Leanpub, 475 pages) - Design Patterns in Modern C++20 (2nd Ed.) by Dmitri Nesteruk, 2022.
(Nesteruk, ISBN 978-1-4842-7294-7, 390 pages) - C++20 - The Complete Guide by Nicolai M. Josuttis, December 2021.
(Leanpub, 474 pages) - Demystified Object-Oriented Programming with C++ by Dorothy R. Kirk, March 2021.
(Packt Publishing, ISBN 978-1-8392-1883-5, 568 pages) - Professional C++ (5th Ed.) by Marc Gregoire, February 2021.
(Wiley, ISBN 978-1-1196-9540-0, 1312 pages) - Real-Time C++ (4th Ed.) by Christopher Kormanyos, 2021.
(Springer, ISBN 978-3-6626-2995-6, 510 pages) - C++ Early Objects (10th Ed.) by Tony Gaddis et al., 2020.
(Pearson, ISBN 978-0-13-523500-3) - C++ Distilled by Ira Pohl, July 2007.
(Pearson, ISBN 978-0-2016-9587-8, 210 pages)
- The C++ Standards Committee - ISOCPP.
- C++ Standards Committee Papers: 2019, 2020, 2021, 2022.
- Formatting Ranges (Document# P2286R8), May 2022.
News ▴
- GCC Announcements :
- GCC 14.2 Released, August 2024.
- GCC 14.1 Released, May 2024 (changes).
- GCC 13.3 Released, May 2024.
- GCC 13.2 Released, July 2023.
- GCC 13.1 Released, April 2023 (release notes).
- GCC 12.3 Released, May 2023).
- GCC 12.2 Released, August 2022.
- GCC 12.1 Released, May 2022 (release notes.
- GCC 11.4 Released, May 2023.
- GCC 11.3 Released, April 2022.
- GCC 11.1 Released, April 2021 (release notes).
- GCC 10.5 Released, July 2023.
- GCC 10.3 Released, April 2021
- GCC 10.1 Released, May 2020 (release notes).
Tools ▴
- Astrée – a fast and sound static analyzer for C/C++.
- C++ Insights – a Clang-based tool which does a source to source transformation.
- Coliru – an Web-based compile/run tool for GCC.
- Conan – a C/C++ package manager.
- RuleChecker – a static analyzer that automatically checks your C or C++ code for compliance with MISRA rules, CERT recommendations, and other coding guidelines.
- Beginner's Guide to Linkers by David Drysdale, 2010.
- C++ Core Guidelines by Bjarne Stroustrup and Herb Sutter, April 2022.
- C++ Reference: C++11, C++14, C++17, C++20, C++23.
- Google C++ Style Guide.
- Microsoft Learn – Pure Virtual C++ 2024, April 2024.
- Things that Matter by Scott Meyers, 2017.