C++14 and C++17 added many new features to the C++ language. This course will teach you practical features introduced in C++14 and C++17, that you will be able to use to write clearer, simpler, and higher-quality modern C++ code.
After the C++11 "revolution," several other features were added by the C++14 and C++17 standards. While C++11 was a massive improvement over the previous C++98/03, C++14 and C++17 are kind of more incremental improvements; nonetheless, interesting, powerful and useful features were added in these recent C++ standards. In this course, Practical C++14 and C++17 Features, you'll learn many practical features added in the C++14 and C++17 standards, assuming you have only a basic knowledge of C++11, like the one you can get watching the "C++11 from Scratch" course; any advanced C++11 concepts will be explained here on a need-to-know basis. Among the many topics discussed in this course, you'll start learning small but nice features, like digit separators. Then you'll explore more substantial features, like polymorphic lambdas (the course will also introduce basic lambdas as well, so you're not left in the dark if you don't know C++11 lambdas), and relaxed constexpr functions. You'll also learn about improvements to the C++ standard library, like the new standard-defined suffixes for the Chrono library (which will be introduced as well), or std::make_unique in combination with the unique_ptr smart pointer (that'll be introduced here as well). Finally, you'll explore new practical C++17 features, ranging from nested namespaces, to "constexpr if" and structured bindings. The features will be discussed using both slides, and with concrete C++ demo code, including showing some subtle bugs, and how to fix them. After completing this course, you'll be able to write simpler, clearer, more efficient and higher-quality modern C++ code, applying the features discussed in this course in your own C++ codebases. This course targets developers who are already familiar with basic C++11, and want to extend their knowledge to practical C++ features introduced in C++14 and in C++17. If you need a beginner-oriented introduction to C++11, you can watch the "C++11 from Scratch" course.
Giovanni Dicanio is a computer programmer specialized in both cross-platform C and C++, and Windows operating system development. He is a Microsoft MVP for Visual C++. He also blogs on msmvps.com/gdicanio.
Course Overview Hi everyone! My name is Giovanni Dicanio and the welcome to my course on Practical C++14 and C++17 Features. I'm a programmer specializing in C and C++ and a Pluralsight author. After the C++11 revolution, many additions and improvements were made to the C++ language that materialized in the C++14 and the C++17 standards. In this course we are going to cover practical new features introduced in C++14 and C++17 that will help you writing the simpler, clearer, and higher quality modern C++ code. Just to whet your appetite, some of the major topics that we will cover include automatic return type deduction, relaxed constxpr functions, the chrono library with its safe standard defined suffixes, polymorphic lambdas, and C++17 juice ranging from constxpr if to structure bindings just to name a few. By the end of this course, you'll be productive with the C++14 and C++17 practical features that you will be able to use to write better, clearer, and higher quality modern C++ code. Before beginning this course, you should be familiar with the basic elements of C++11 like those covered in my C++11 From Scratch course. I hope you'll join me on this journey to learn useful, modern C++ features with the Practical C++14 and C++17 Features course at Pluralsight.