Company: Packt Publishing Author: Vittorio Romeo Full Title: Type-Safe Interfaces With Modern C++ | Mastering Modern C++ Year: 2018 Language: English Genre: Educational: Application Development Skill Level: - Price: €124.99 - Files: MP4 Time: 02:13:43 Video: AVC, 1920 x 1080 (1.778) at 30.000 fps, 200 kbps Audio: AAC at 160 Kbps, 2 channels, 48.0 KHz Master the art of development with Modern C++ type system. In this course we’ll learn how to write correct, safe, and performant code by making use of C++’s type system. Firstly, we’ll learn about the Standard Library’s “algebraic data types” and how they can increase safety, performance, and readability of your application/library. We’ll then look at function interfaces. As an example, writing a function that takes a string in such a way that it performs optimally with both std::string and const char* seems like a daunting task. It gets even more tricky with functions taking other functions as input. Is it possible to generalize these issues and provide the “perfect” interface? Style and Approach This video course carefully guides the audience through an overview of the new C++17 language and library features, providing realistic usage examples. Implementations of novel utilities are also explained in a step-by-step fashion. Learn: ✓ Use type system to your advantage ✓ Create safe, rich and expressive interfaces ✓ Use Pattern matching to implement metaprogramming ✓ Real world scenarios to tackle programming tasks Features: ✓ Shows how to maximize the power of the latest C++17 ✓ Covers the usesge of algebraic datatypes to improve safety and performance ✓ Implement function parameters and analyze its performance in depth Lessons: 1. Variants 01. The Course Overview 02. Understanding Variants 03. std::variant – Basic Interface 04. std::variant – Visitation 05. std::variant – Use Cases 06. std::variant – Recap 2. Implementing Variant Pattern Matching 07. The Problem with std::visit 08. Creating an Overload Set 09. Match – Implementation 10. Match – Recap 3. Optionals 11. What Is an Optional 12. std:: optional – Basic Interface 13. std:: optional – Use Cases 4. Function Parameters and Ownership 14. std::string 15. std::string_view – Introduction 16. std::string_view – Basic Interface 17. std::string_view in Interfaces 18. Other Examples of Owning/View Classes Our members see more. Join us! ------------- Our members see more. Join us!