Table of Contents

How do you see the new C++ standard? Is it ok? Great? Meh?

Last week, after a few years of break, I presented my new talk that addressed the above question! It happened at the Cracow C++ Local Group.

Have a look what’s inside this talk.

Intro  

Listing all of the features from the new standard might sound simple at first glance. All you have to do is to go through the things alphabetically, mention a few code samples and you’re done :)

For example here’s the picture with such list:

Quite a lot… right? :)

So I came up with a categorization, the same as you could read in my C++17 article series:

  1. Fixes and deprecation
  2. Language clarification
  3. Templates
  4. Attributes
  5. Simplification
  6. Library changes - Filesystem
  7. Library changes - Parallel STL
  8. Library changes - Utils

I am not sure if that’s the best order, but at least it groups things together.

The talk  

The talk was presented at :

Summary of C++17 features | C++ User Group Krakow (Kraków, Poland) | Meetup

And here are the slides:

Summary of C++17 features from Bartlomiej Filipek

Summary  

Ok… so what’s the answer to that C++17 awesomeness question?

In my opinion, it’s a very decent standard.

We got a lot of powerful features (like fold expressions, constexpr if, template argument deduction for class templates, filesystem, parallel STL, …). There’s always a desire to have more, but that couldn’t happen due to the new standardization process. Every three years we’ll get a new version. While C++17 is “smaller” than C++11, it’s shipped faster (3 years) rather than 13 years! So we cannot forget about this.

And another point: how to efficiently learn when the language is changing so fast? :)