C++ has come a long way and has now been adopted in several contexts with the latest updates of the STL and with C++17 on its way.
This video course will take you through C++'s Standard library and the most important features of C++11/14/17. You will begin with new language features and will gradually move on to library components and then to the traps and pitfalls and ways to avoid them. You will learn about STL components such as <utility>, smart pointers, `std::function`, `std::move`, and `std::exchange`, while at the same time reinforcing and deepening your understanding of the new language features. From here, you will learn to examine containers, iterators, function objects, with STL algorithms and lambda expressions. You will also be introduced to some upcoming C++17 additions including language features such as `constexpr` lambdas, and library additions such as the new algebraic data types and metaprogramming utilities. Throughout the course, you will learn the common pitfalls in "old" C++ programming and best practices for software development in Modern C++.
By the end of the course, you will have mastered Modern C++'s most impactful language and library features.