C++ Templates and the STL

C++ Templates and the STL

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 2h 13m | 319 MB

C++ templates support generic programming, code that works independent of type. The C++ Standard Template Library (STL) is one of the most complete and powerful container libraries available. Having a solid grasp of both C++ templates and the STL is essential for programmers looking to attain competency in C++. In this course, the second in a series focused on C++ essentials, instructor Bill Weinman dives into both of these fundamental topics. To begin, he covers templates, discussing template syntax, template functions and classes, and argument deduction. He then builds on that knowledge to discuss STL containers, iterators, transformations, functions, and algorithms.

Topics include:

  • Template fundamentals
  • STL containers
  • Accessing iterators
  • Output, forward, and bidirectional iterators
  • The transform function
  • Transforming strings and types
  • Arithmetic, relational, and logical functions
  • STL algorithms
Table of Contents

Introduction
1 Dive into C templates and the STL
2 How to use the exercise files

Templates
3 What is a template
4 Template syntax
5 Template specialization
6 Template variables
7 Impact on header files
8 Type inference
9 Argument deduction

STL Containers
10 Vector
11 List
12 Pair and tuple
13 Array
14 Deque
15 Queue
16 Stack
17 Set
18 Maps

STL Iterators
19 Accessing iterators
20 Input iterators
21 Output iterators
22 Forward iterators
23 Bidirectional iterators
24 Random access iterators

Transformations
25 The transform function
26 Lambda transformations
27 Transforming strings
28 Binary transformations
29 Transforming types

STL Functions
30 About functors
31 Arithmetic functors
32 Relational functors
33 Logical functors

STL Algorithm
34 About STL algorithms
35 Testing conditions
36 Searching and counting
37 Replacing and removing
38 Modifying algorithms
39 Partitions
40 Sorting
41 Merging sequences
42 Binary searches

Conclusion
43 Goodbye