C++ Standard Library including C++ 14 & C++ 17

Discover C++17's new features and tools to optimize your code. Explore fundamentals and advanced techniques, and gain insights through hands-on coding exercises to master C++.

Beginner

156 Lessons

12h

Certificate of Completion

Discover C++17's new features and tools to optimize your code. Explore fundamentals and advanced techniques, and gain insights through hands-on coding exercises to master C++.

AI-POWERED

Explanations

AI-POWERED

Explanations

This course includes

112 Playgrounds

This course includes

112 Playgrounds

Course Overview

C++ is one of the most prominent programming languages in the world. Along with optimized performance, the diverse functionality it offers has kept the language relevant for two decades. The C++ Standard Library, which is the collection of all the tools and utilities available in C++, received its latest update in 2017. Known as C++17, the update introduces many new features that further optimize our code. Join us in this course as we venture into the vast world of C++17. We’ll examine the fundamentals of ...Show More

Course Content

1.

Introduction

Get familiar with the C++ Standard Library, key conventions, source examples, and C++11 enhancements.
2.

The Standard Library

Look at the evolution of the C++ Standard Library, key utility libraries, and STL components.
3.

Overview

Examine C++ libraries for numeric functions, text processing, I/O, filesystems, and multithreading.
4.

Application of Libraries

Enhance your skills in utilizing C++ libraries, from including headers to managing namespaces and building executables.
5.

Utilities

Dig deeper into versatile tools in the C++ Standard Library for efficient data management.
6.

Useful Functions

4 Lessons

Investigate versatile functions like min, max, move, forward, and swap in C++.
7.

Adaptors for Functions

2 Lessons

Master how to use std::bind and std::function for efficient functional programming.
8.

Pairs and Tuples

2 Lessons

Learn how to use pairs and tuples for effective data grouping and manipulation in C++.
9.

Reference Wrappers

2 Lessons

Walk through using reference wrappers to enable flexible object copying and callable encapsulation in C++.
10.

Smart Pointers

5 Lessons

Examine how smart pointers improve memory management, including unique, shared, and weak pointers.
11.

Type Traits

3 Lessons

Grasp the fundamentals of C++ type traits, compile-time checks, and type modifications for optimized programming.
12.

Time Library

4 Lessons

Take a look at C++'s time library enhancing multithreading with time point, duration, and clocks.
13.

std::any, std::optional, and std::variant

3 Lessons

Follow the process of utilizing std::any, std::optional, and std::variant for type-safe, flexible data handling.
14.

Interface of All Containers

6 Lessons

Build on the fundamental operations and functionalities of sequential and associative containers.
15.

Sequential Containers

6 Lessons

Learn how to use sequential containers in C++ for various data management needs.
16.

Associative Containers

2 Lessons

Look at C++'s versatile associative containers for efficient key-based data retrieval.
17.

Ordered Associative Containers

5 Lessons

Break apart the intricacies of ordered associative containers, their keys, values, and efficient search functions.
18.

Unordered Associative Containers

5 Lessons

Break down the steps to effectively use unordered associative containers in C++ for better performance.
19.

Adaptors for Containers

4 Lessons

Take a closer look at C++ container adaptors: stack, queue, and priority queue.
20.

Iterators

5 Lessons

Follow the process of using C++ iterators for efficient container traversal and manipulation.
21.

Callable Units

3 Lessons

Piece together the parts of callable units like functions, function objects, and lambda functions.
22.

Algorithms

6 Lessons

Try out C++ algorithms, iterators, and execution policies for enhanced performance.
23.

Non-Modifying Algorithms

6 Lessons

Unpack the core of non-modifying algorithms in C++, covering searching, counting, checks, and comparisons.
24.

Modifying Algorithms

11 Lessons

Work your way through various C++ algorithms for modifying, moving, transforming, and managing ranges effectively.
25.

More Algorithms

8 Lessons

Grasp the fundamentals of advanced C++ algorithms, including partitioning, sorting, and numeric operations.
26.

New Algorithms with C++17

2 Lessons

Take a closer look at new C++17 parallel execution algorithms like `reduce` and prefix sums.
27.

Numeric

2 Lessons

Focus on random number generation and inherited numeric functions in C++.
28.

Strings

10 Lessons

Build on C++ string fundamentals, operations, conversions, and advanced manipulation techniques.
29.

String View

4 Lessons

Get familiar with handling string views for efficient, non-owning string manipulations in C++.
30.

Regular Expressions

9 Lessons

Discover the logic behind using C++ regular expressions for text pattern matching, searching, and replacing.
31.

Input and Output Streams

9 Lessons

Work your way through C++ input, output, file, and string stream operations and management.
32.

File Systems

4 Lessons

Break down the steps to manage files and directories using C++ filesystem utilities.
33.

Multithreading

7 Lessons

Take a look at C++ multithreading basics, memory model, atomic data, threads, and synchronization.

Course Author

Add a deep mastery of C++ to your skillset, and make yourself a more in-demand developer.


Path Cover

Learn C++ for Programmers

Learn C++ from scratch, and get hands-on with one of the most popular programming languages in the world.
Explore Path

7 Modules

Trusted by 1.4 million developers working at companies

Anthony Walker

@_webarchitect_

Emma Bostian 🐞

@EmmaBostian

Evan Dunbar

ML Engineer

Carlos Matias La Borde

Software Developer

Souvik Kundu

Front-end Developer

Vinay Krishnaiah

Software Developer

Eric Downs

Musician/Entrepeneur

Kenan Eyvazov

DevOps Engineer

Anthony Walker

@_webarchitect_

Emma Bostian 🐞

@EmmaBostian

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

Instant Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

AI-Powered Mock Interviews

Adaptive Learning

Explain with AI

AI Code Mentor