C++
continue continue continue
C++ is a programming language based on C that feature object-oriented programming. Most C code can also compile in C++. The latest version of C++ is C++17.
Learning C++
To learn C++ you need a c++ compiler, a text editor and something to learn it from. To make things easy use a integrated development environment that has a compiler built it. My suggestion is that for windows use Visual Studio, for Mac use Xcode and for Linux use ???. All of these are free. For a way to learn i list the options below by medium.
Online - LearnCpp.com - 2016
Book -
Youtube -
Compiler Explorerer - 2016
C++ language
C++ keywords - The keywords that make up C++ and links and notes related to them.
Preprocessor - Modify the code before it compiled.
Templates - The thing that mess up the error messages from the compiler.
Pointers - Some of them is smarter then others.
Memory - The pointers are out there waiting for you to make a mistake.
C++ Core Guidelines - 2016
Project Managment
Other
Reference
The pImpl Idiom - 2019
C Is Not a Low-level Language - 2018
Simplicity: Not Just For Beginners - 2018
Jason Turner C++ Weekly - 2016
Game engine using STD C++ 11 - 2016
C++ in Huge AAA Games - 2014
Managing Decoupling - 2013: One, Two, Three, Four
Managing Data Relationships - 2009
=== Modern C++
C++, it’s not you. It’s me - 2019
Gamedev introduction to 'Modern' C++ - 2019
"Modern" C++ Lamentations - 2018
Thoughts on Modern C++ and Game Dev - 2018
Modern C++” != “New(est) Standard - 2018
Modern C++ Features – Quality-of-Life Features - 2018
Modern C++ for C Programmers - 2018
Modernizing Legacy C++ Code - 2014
=== Speed
Is C++ fast? - 2019
How LLVM Optimizes a Function - 2018
Four Habit-Forming Tips to Faster C++ - 2016
=== Books
Reflection for aggregates - 2020
Parsing C Style Expressions - 2015
Game Programming Primer - 2013
Z7: Everything old is new again - 2010
Optimizations that aren't - 2010
Death by static initialization - 2010
Binary Heaps in C - 2016
6th tip to understand legacy code - 2018
How to Write Great Unit Tests - 2020
Windows Timer Resolution: The Great Rule Change - 2020
Plenary: Performance Matters - Emery Berger - 2020
Handling errors is canceling operations - 2019
Accio Dependency Manager - 2018
A can of span - 2018
C++ programming tips - 2017
Plugins in C - 2012
Understanding the x64 code models - 2012
Programmatic access to the call stack in C++ - 2015
C++: RAII without exceptions - 2016
Returning multiple values from functions in C++ - 2016
Perfect forwarding and universal references in C++ - 2014
Type erasure and reification - 2018
Type inference - 2018
Covariance and contravariance in subtyping - 2018
C++ programming tips - 2017
Full Stack Tracing
https://www.kdab.com/full-stack-tracing-part-3/amp/
C++11/14 at Scale: What Have We Learned?
https://m.youtube.com/watch?v=E3JG2Ijjei4
Finding Bugs with AddressSanitizer: Patterns from Open Source Projects
Avatar
https://devblogs.microsoft.com/cppblog/finding-bugs-with-addresssanitizer-patterns-from-open-source-projects/
Best Practices for Authoring Generic Data Structures
https://www.jeremyong.com/c++/graphics/2018/11/17/best-practices-for-authoring-generic-data-structures/
C++20 Coroutines: sketching a minimal async framework
How C++ Resolves a Function Call
A New Cross-Platform Open Source C++ Framework
A Flexible Reflection System in C++: Part 1 & Part 2
Virtual Inheritance in C++ - 2021
C++ build throughput investigation and tune up - 2021
SizeBench: a new tool for analyzing Windows binary size - 2021
Extending and Simplifying C++: Thoughts on Pattern Matching using `is` and `as` - Herb Sutter
https://www.youtube.com/watch?v=raB_289NxBk