Course Information
Course Overview
Harness the power of the C++ STL and make full use of its components
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.
About the Author :
Vittorio Romeo
Vittorio has been a C++ enthusiast from a young age, with a BS in Computer Science from the Università degli Studi di Messina, and now works at Bloomerg LP. While following the evolution of the C++ standard and embracing the newest features, he worked on several open-source projects, including modern general-purpose libraries and free cross-platform indie games. Vittorio is an active member of the C++ community, speaking at many conferences and events. He currently maintains a YouTube channel featuring well-received Modern C++11 and C++14 tutorials. When he's not writing code, Vittorio enjoys weightlifting and fitness-related activities, competitive/challenging computer gaming, and good sci-fi movies/TV-series.
Course Content
- 8 section(s)
- 28 lecture(s)
- Section 1 Value Categories and Move Semantics
- Section 2 Smart pointers
- Section 3 Creating Movable Classes
- Section 4 Discover Lambdas
- Section 5 Lambdas as First-Class Citizens
- Section 6 Mastering Lambdas
- Section 7 Programming at Compile-Time
- Section 8 Computations on Types
What You’ll Learn
- Analyze and demystify some major new features such as move semantics, variadic templates, and lambdas
- Learn about new core language features and the problems they were intended to solve
- Discover new techniques that allow computations to be performed at compile-time
- Create safer and more convenient interfaces, without any extra hidden cost
- Improve your code by replacing new/delete with smart pointers
- Get well versed with the C++ STL and make full use of its components
Reviews
-
KKrzysztof Dąbrowski
Not only the topics are presented in an easily digestible manner but also the instructor points out the most important things. However it requires a lot of self practice to understand the applications fully.
-
AAnonymized User
This course would really help me as a Librarian to understand how to deal with reference resources in standard library features.
-
IIvaldino Soares
Good lessons. An improvement suggestion would be to start to highlight or select the line you are currently referring while you explaining the of code.
-
JJuan Pablo Mendez Altuzar
Vittorio Romeo is pretty good at explaining C++ language features. His experience and passion for the language transpires. You're probably gonna have to clarify some language features elsewhere (for some C++ knowledge is assumed) and If your previous approach to the language was organic - learning as you developed - it's unlikely you'd have explored all the language features. I would've liked more examples on smart pointers, but you're gonna finish the course as a lambda master! I highly recommend that you take lots of notes and make your own experiments to clarify the questions that may pop up! Getting used to novel syntax, and making it part of your intuition will always take some practice.