Language Features

We'll start things off with a brief introduction of what to expect in this course.

We'll cover the following

C++17 is a major update of C++, and it brings a lot of language features. Most of the new additions make the language cleaner and more straightforward. In this part you’ll learn:

• What was removed from the language and what is deprecated?

• How the language is more precise: for example, thanks to expression evaluation order guarantees.​

• What are new features of templates: like if constexpr or fold expressions

• What are the new standard attributes

• How you can write cleaner and more expressive code thanks to structured binding, inline variables, compile-time if or template argument deduction for classes

Quick Start

To make you more curious about the new Standard, there are a few code samples in the following lessons that present combined language features.

Don’t worry if you find those examples too complicated because they mix too many new things at once. All the new features are individually explained in depth in the next sections.


Let’s get started with maps in C++17.