When it comes to number-crunching, C++ is at the core of HENP’s software. But while C++17 is old news, many of us did not get to use it yet. And why would we? This presentation introduces some of the main reasons to move to C++17 - focusing on performant, readable code and robust interfaces.
Where C++17 has many new features that help, C++20 might come as “your next C++11”, a major step forward for C++: it will most likely introduce concepts, contracts and ranges; fairly likely the “spaceship operator”, coroutines and networking. Some of these will change the way we want to write code. As today’s compilers are already implementing many of tomorrow’s features, now is a good time to see where C++ is heading, and to learn how this affects our usage of C++.