Expert-led training for your team

C++ 20 and 23 training course

Discover The Power Of New C++ 20 and 23 - Improve Functionality & Speed Up Development

JBI training course London UK

"Overall I felt it improved my knowledge of C++ - filled in some gaps and corrected some misunderstandings in my knowledge, and reminded me of some important things I'd forgotten."  

IH, Software Engineer, C++, May 2021

Public Courses

15/07/24 - 4 days
£2950 +VAT
26/08/24 - 4 days
£2950 +VAT
07/10/24 - 4 days
£2950 +VAT

Customised Courses

* Train a team
* Tailor content
* Flex dates
From £1200 / day
EDF logo Capita logo Sky logo NHS logo RBS logo BBC logo CISCO logo
JBI training course London UK

C++ 20 and 23 Training Course

  • Gain an Introduction to modern C++ using C++20 and C++23
  • Learn the latest C++ features
  • Understand the many new features in C++ 11 to C++23
  • Explore the new template features
  • Explore new Standard Library Features
  • Explore the new fluent style of programming
  • Use new multithreading and synchronisation features
  • Learn how to structure applications using Modules


  • Overview of History of C++ Language
  • Introduction to C++11/14/17/20/23
  • New features summary
  • Current compiler support

Template related features:

  • Template syntax for lambdas
  • Abbreviated function templates
  • Classes as template non-type parameter
  • Lambda capture of variadic parameters


  • Defining a concept
  • Constraints
  • requires

Ranges (library)

  • Ranges and Views
  • Constrained Algorithms
  • Constrained Algorithms projections
  • Fluent style programming
  • Filtering and transforming


  • jthread
  • stop_source and stop_token
  • semaphore
  • latch and barrier
  • Atomic shared pointer


  • Defining a module
  • export and import keywords
  • Making implementation private


  • What are coroutines?
  • Why use coroutines?
  • co_await, co_yield and co_return.
  • generator (C++ 23)

General C++ 20 features including:

  • using enum
  • Lambda capture of ‘this’
  • consteval – immediate functions
  • Deprecated implicit capture
  • Designated initializer
  • constexpr virtual functions
  • Conditional explicit
  • New attributes [[likely]] and [[unlikely]]
  • Spaceship operator <=>
  • Source location
  • std::format
  • shared pointer support for arrays

C++ 23 features

  • Formatted output library
  • fold algorithms
  • Static operators
  • Multiple subscript [] operator
  • Monadic std::optional member functions
  • std::expected


JBI training course London UK

C++ developers who need to upgrade their skills in line with the latest C++ standards

5 star

4.8 out of 5 average

"Overall I felt it improved my knowledge of C++ - filled in some gaps and corrected some misunderstandings in my knowledge, and reminded me of some important things I'd forgotten."  

IH, Software Engineer, C++, May 2021

“JBI  did a great job of customizing their syllabus to suit our business  needs and also bringing our team up to speed on the current best practices. Our teams varied widely in terms of experience and  the Instructor handled this particularly well - very impressive”

Brian F, Team Lead, RBS, Data Analysis Course, 20 April 2022



JBI training course London UK



Sign up for the JBI Training newsletter to stay updated with world-class technology training opportunities, including Analytics, AI, ML, DevOps, Web, Backend and Security. Our Power BI Training Course is especially popular.  Gain new skills, useful tips, and validate your expertise with an industry-leading organisation, all tailored to your schedule and learning preferences.

Our C++20 training course is designed to update developer with the new C++ features.  

Many modern C++ features are designed to simplify code or improve safety and performance.  The use of templates is a common way to write general purpose code and C++ 20 adds yet more features to simplify this type of code.

New Standard Library features are introduced which take advantage of these new C++ features. Other Standard Library features are overviewed which reduce dependence on operating system.  These features include support for threading and synchronisation.

C++ has for a long period supported Object Oriented, Generic and Functional style programming, but now also provides support for fluent style programming.

The latest C++20 features can change the way code is written and can improve the structure of code.

+44 (0)20 8446 7555

[email protected]



Copyright © 2023 JBI Training. All Rights Reserved.
JB International Training Ltd  -  Company Registration Number: 08458005
Registered Address: Wohl Enterprise Hub, 2B Redbourne Avenue, London, N3 2BS

Modern Slavery Statement & Corporate Policies | Terms & Conditions | Contact Us


Rust training course                                                                          React training course

Threat modelling training course   Python for data analysts training course

Power BI training course                                   Machine Learning training course

Spring Boot Microservices training course              Terraform training course

Kubernetes training course                                                            C++ training course

Power Automate training course                               Clean Code training course