English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 2h 54m | 1020 MB
Looking to enhance your understanding of C++? In this course, explore some of the more complex aspects of this core programming language. From the basics of class definition to operator overloads and move semantics, instructor Bill Weinman helps you develop the skills you need to get the most out of C++. Learn about lambda expressions, concurrency, constraints and concepts, optional and variant classes, structured bindings, and best practices for initialization. Along the way, Bill covers some of the newer features of C++ including how to use the format library, the spaceship operator, the span class, and more.
Table of Contents
Introduction
1 About this course
2 Using the exercise files
Operator Overloads
3 Operator overloads
4 Nonmember operators
5 Conversion operators
6 Increment and decrement operators
7 Functors
Move Semantics
8 What is move semantics
9 Understanding lvalues and rvalues
10 Using std move
11 The move constructor
12 The move assignment operator
13 The copy-and-swap idiom
14 Rule of three and five
Lambda Expressions
15 Lambda syntax
16 Closures
17 Algorithm predicates
18 Challenge A Lambda jump table
Constraints and Concepts
19 Why constraints
20 Constraint syntax
21 Defining concepts
Optionals and Variants
22 The optional class
23 The any class
24 The variant class
Concurrency
25 Sleeping
26 Threads
27 The async function
28 Mutex and lock
29 Atomic variables
30 The producer-consumer idiom
Other Subjects
31 Initialization
32 Structured bindings
33 Random number engines
34 The chrono library
35 The filesystem library
Other C++20 New Features
36 The format library
37 The spaceship operator
38 Integer comparisons
39 The span class
Final Project and Conclusion
40 Final project Numword
41 Thank you
Resolve the captcha to access the links!