We may earn an affiliate commission when you visit our partners.

C++20

Save
May 11, 2024 3 minute read

C++20 is the latest major revision to the C++ programming language, released in December 2020. It introduces a number of new features and improvements that make it easier to write fast, efficient, and maintainable code. Some of the most notable new features in C++20 include:

Modules

Modules are a new way to organize and distribute C++ code. They allow you to break your code into smaller, more manageable units, which can be reused across multiple projects. Modules also make it easier to share code with other developers.

Concepts

Concepts are a new way to express constraints on templates. They allow you to specify the requirements that a template must meet in order to be used with a particular function or class. Concepts make it easier to write generic code that is both safe and efficient.

constexpr Functions

Constexpr functions are functions that can be evaluated at compile time. This allows you to perform complex calculations and other operations at compile time, which can improve the performance of your code.

Range-Based for Loops

Range-based for loops are a new way to iterate over ranges of elements. They make it easier to write code that is both concise and efficient.

Structured Bindings

Structured bindings allow you to bind multiple values to a single variable. This makes it easier to write code that is both readable and maintainable.

Why Learn C++20?

There are many reasons why you might want to learn C++20. Some of the benefits of learning C++20 include:

Path to C++20

Take the first step.
We've curated ten courses to help you on your path to C++20. Use these to develop your skills, build background knowledge, and put what you learn to practice.
Sorted from most relevant to least relevant:

Share

Help others find this page about C++20: by sharing it with your friends and followers:

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in C++20.
Provides a comprehensive overview of the C++20 Standard Library, covering all of the major new features and additions. It is an essential resource for anyone who wants to learn about the latest C++ standard.
Classic guide to writing efficient and maintainable C++ code. It covers a wide range of topics, including object-oriented programming, templates, and concurrency. While it is not specific to C++20, it is still an essential read for anyone who wants to understand modern C++.
Guide to writing efficient and maintainable C++ code using generic programming and design patterns. It covers a wide range of topics, including templates, metaprogramming, and concurrency. While it is not specific to C++20, it is still an essential read for anyone who wants to understand modern C++.
Practical guide to using concurrency in C++. It covers a wide range of topics, including threads, mutexes, and atomic variables. While it is not specific to C++20, it is still an essential resource for anyone who wants to learn about concurrency in C++.
Comprehensive guide to using templates in C++. It covers everything from the basics of templates to advanced techniques such as template metaprogramming. While it is not specific to C++20, it is still an essential resource for anyone who wants to learn about templates.
Comprehensive guide to using templates in C++. It covers everything from the basics of templates to advanced techniques such as template metaprogramming. While it is not specific to C++20, it is still an essential resource for anyone who wants to learn about templates.
Table of Contents
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser