Modern C++ Features & Concurrency
About this Course
This course delves into the latest features of Modern C++, with a primary focus on concurrency, C++17 language updates, and powerful tools that enhance code performance and reliability. You will explore the capabilities of C++17, including the introduction of advanced concurrency techniques, templates, and functional programming tools. This comprehensive guide equips you with the knowledge to build efficient, concurrent programs while utilizing the most current features of C++ for maximum performance. The course starts with concurrency basics, introducing the importance of multi-threading and how to implement it using std::thread. You will dive deeper into thread synchronization with std::mutex and learn how to pass arguments to threads. You\'ll then explore task-based concurrency with std::async, std::future, and std::promise, and learn how to propagate exceptions between threads seamlessly. This will provide you with the tools needed to write scalable, thread-safe applications. As you move into the C++17 core language features, you\'ll examine the new features, such as inline variables, noexcept, and structured bindings. C++17 also brought mandatory copy elision, and this course will clarify its benefits. You\'ll gain an understanding of how to leverage these new features to make your code more efficient and readable. The final sections cover advanced template features like Compiled Time Argument Deduction (CTAD), if constexpr, and folding expressions, as well as C++17 standard library additions like std::optional, std::variant, and parallel algorithms. These components empower you to write more flexible, error-free, and high-performance C++ code.Created by: Packt

Related Online Courses
This course introduces the products and solutions to solve NLP problems on Google Cloud. Additionally, it explores the processes, techniques, and tools to develop an NLP project with neural... more
In this specialization, learners will use generative AI as both a statistical programming language and as a tutor to help understand basic statistics. Beginning with the basics of formulating... more
This is the 3rd and final course of the spacecraft relative motion course sequence. This course presents a capstone design challenge where you get to develop, simulate and study how to approach a... more
This course describes the underpinning science around vaccines and their development. It will look at the immunological underpinnings of how vaccines induce protection. It will also look at the... more
This is the final course in the Specialization. After a brief introduction, the course will cover two Special Topics that weren\'t covered in the previous courses, but considered very important.... more