Log In
Join
 for free
Back To Module Home
C++ Standard Library
0% completed
The Standard Library
History
Utilities
Components
Overview
Numeric Functions
Text Processing
Input, Output and Filesystems
Multithreading
Application of Libraries
Introduction
Including Header Files
Using Namespaces
Building an Executable
Useful Functions
The min, max and minmax functions
Move vs. Copy
Forward
Swap
Adaptors for Functions
std::bind and std::function
Behavior of std::bind and std::function
Pairs and Tuples
Pairs
Tuples
Reference Wrappers
Introduction
std::ref and std::cref
Smart Pointers
Introduction
Unique Pointers
- Examples
Shared Pointers
- Examples
Weak Pointers
- Example
Cyclic References
- Example
- Exercise
- Solution
Performance Comparison
Passing Smart Pointers
Type Traits
Introduction
Check Type Information
Type Comparisons and Modifications
Time Library
Introduction
Time Point
Time Duration
Clock
std::any, std::optional, and std::variant
std::any
std::optional
std::variant
Containers in General
Introduction
Create and Delete
Size
Access
Assign and Swap
Compare
Sequential Containers
Introduction
Arrays
- Exercise
- Solution
Vectors
- Exercise
- Solution
Deques
Lists
Forward Lists
- Exercise
Associative Containers in General
Introduction
Insertion and Deletion
Ordered Associative Containers
Overview
Keys and Values
The Comparison Criterion
Special Search Functions
Maps
- Exercise
Unordered Associative Containers
Overview
Keys and Values
Performance
The Hash Function
The Details
- Exercise
- Solution
Adaptors for Containers
Introduction
Stack
Queue
Priority Queue
Iterators
Introduction
Categories
Iterator Creation
Useful Functions
Adaptors
Callable Units
Introduction
Functions and Function Objects
Lambda Functions
Algorithms
Introduction
Conventions
Iterators are the glue
Sequential, parallel, or parallel execution with vectorisation
Algorithms with Parallelized Versions
for_each
Non-Modifying Algorithms
Introduction
Search Elements
Count Elements
Check Conditions on Ranges
Compare Ranges
Search for Ranges within Ranges
Modifying Algorithms
Copy Elements and Ranges
Replace Elements and Ranges
Remove Elements and Ranges
Fill and Create Ranges
Move Ranges
Swap Ranges
Transform Ranges
Reverse Ranges
Rotate Ranges
Randomly Shuffle Ranges
Remove Duplicates
More Algorithms
Partition
Sort
Binary Search
Merge Operations
Heaps
Min and Max
Permutations
Numeric
New Algorithms with C++17
Reduce
Scan
Numeric
Random Numbers
Functions Inherited from C
Strings
Introduction
Create and Delete
Conversion Between C++ and C Strings
Size versus Capacity
Comparison and Concatenation
Element Access
Input and Output
Search
- Exercise
- Solution
Modifying Operations
Numeric Conversions
String View
Introduction
Create and initialise
Non-modifying operations
Modifying operations
Regular Expressions
Introduction
Character Types
Regular Expression Objects
The Search Result
Match
Search
Replace
Format
Repeated Search
Input and Output Streams
Introduction
String Streams
File Streams
State of the Stream
User-defined Data Types
Hierarchy
Iostream
Input and Output Functions
Format Specifier
Conclusion
Final Remarks
- Solution
In this lesson, we'll discuss the solution to the problem discussed in the previous lesson.
We'll cover the following
Solution
Explanation
Solution
#