About This Course

Learn modern C++ to write expressive and efficient applications targeting various platforms in this lesson.

The C++ of today provides programmers with the ability to write expressive and robust code, while still making it possible to target almost any hardware platform, and at the same time meet performance-critical requirements. This makes C++ a unique language. Over the last few years, C++ has turned into a modern language that is more fun to use and has better defaults.

This course aims to provide a solid foundation to write efficient applications, as well as an insight into strategies for implementing libraries in modern C++. We have tried to take a practical approach to explaining how C++ works today, where features from C++17 and C++20 are a natural part of the language, rather than looking at C++ historically.

Many chapters span a wide range of difficulty. They start with the absolute basics and end with advanced topics such as custom memory allocators. Apart from the first three chapters, most chapters can be read independently.

This course expects learners to have a basic knowledge of C++ and computer architecture, and a genuine interest in evolving your skills.

Hopefully, by the time learners finish this course, you will have gained a few insights into how they can improve C++ applications, both performance-wise and syntactically.