Video & On-Demand

CppCon 2022 An Introduction to Multithreading in C++20 -- Anthony Williams

multithreading-williams.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

An Introduction to Multithreading in C++20

by Anthony Williams

Summary of the talk:

Where do you begin when you are writing your first multithreaded program using C++20? Whether you've got an existing single-threaded application, or you're starting from scratch, C++20 provides the basic tools to help. In this talk we'll look at the C++20 facilities you should reach for first, and how to use them safely.

CppCon 2022 C++20’s Coroutines for Beginners -- Andreas Fertig

coroutinesforbeginners-fertig.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

C++20’s Coroutines for Beginners

by Andreas Fertig

Summary of the talk:

You've heard about this new feature in C++20, coroutines, but it's the first time you have encountered this term? Then this talk is what you're looking for. We start from the beginning with just "normal" functions. Next, we introduce coroutines.

Using them, we explore the various customization points C++ offers. We look at what the new keywords co_await, co_yield, and co_return are for.

Sadly, we also have to talk about how to write a generator for a coroutine since there is no STL part for that in C++20.

Another distinction we make is between cooperative and preemptive multitasking, opening the door for another beauty of coroutines, why we don't need locks.

By the end of this talk, you've learned what coroutines are and where you can use them.

CppCon 2022 Using Modern C++ to Eliminate Virtual Functions -- Jonathan Gopel

usingmoderncppto-gopel.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

Using Modern C++ to Eliminate Virtual Functions

by Jonathan Gopel

Summary of the talk:

As of C++20, there are no cases in which statically linked programs require virtual functions. This talk will explore techniques for replacing runtime polymorphism with compile-time polymorphism such that virtual functions are never necessary. This talk will also address the higher-order concern of when it might make sense to avoid virtual functions or remove them from a codebase, as that decision ultimately is a design decision that only the author of the code can make. Attendees can expect to come away with a stronger understanding of the purposes of virtual functions and the mechanisms in modern C++ that can now be used to achieve those same purposes.

CppCon 2022 Finding Whether a Number is a Power of 2 -- Ankur Satle

Finding_Whether_a_Number_is_a_Power_of_2_Ankur_Satle.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

Lightning Talk: Finding Whether a Number is a Power of 2

by Ankur Satle

Summary of the talk:

I asked this question on social media and got many diverse responses. I will present the various approaches and compare them. I will finish with the options C++20 provides with the bit header. https://en.cppreference.com/w/cpp/numeric/has_single_bit

CppCon 2022 Who is Looking for a C++ Job? -- Jens Weller

whoislookingforjob-weller.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

Lightning Talk: Who is Looking for a C++ Job?

by Jens Weller

Summary of the talk:

A few insights on who has been applying for C++ jobs and visited the Meeting C++ online job fairs.

CppCon 2022 Template Meta-Programming in C++ -- Kris Jusiak

Template_Meta-Programming_in_Cpp_Kris_Jusiak.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

Lightning Talk: MP: Template Meta-Programming in C++

by Kris Jusiak

Summary of the talk:

In this lightning talk, Kris attempts to teach template meta-programming in 5 minutes with the use of C++20 and ranges.
 

CppCon 2022 Back to Basics: Templates in C++ -- Nicolai Josuttis

CppCon_2022_Back_to_Basics_Templates_Nicolai_Josuttis.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

Back to Basics: Templates in C++

by Nicolai Josuttis

Summary of the talk:

Templates are among the most powerful features of C++, but they remain misunderstood and underutilized, even as the C++ language and development community have advanced. This talk shows when and how to use modern templates to build software that's cleaner, faster, more efficient, and easier to maintain. We will cover all basic aspects of templates you have to know when programming generic code in Modern C++

CppCon 2022 The Lambda Calculus in C++ Lambdas -- David Stone

cppcon-2022-the-lambda-calculus-in-cpp-lambdas-david-stone.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

Lightning Talk: The Lambda Calculus in C++ Lambdas

by David Stone

Summary of the talk:

The lambda calculus is a foundation of computation equivalent in power to Turing machines.

CppCon 2022 import CMake, CMake and C++20 Modules -- Bill Hoffman

cppcon-2022-import-cmake-cmake-and-cpp20-modules-bill-hoffman.pngRegistration is now open for CppCon 2023! The conference starts on October 1 and will be held in person in Aurora, CO. To whet your appetite for this year’s conference, we’re posting videos of some of the top-rated talks from last year's conference. Here’s another CppCon talk video we hope you will enjoy – and why not register today for CppCon 2023!

import CMake, CMake and C++20 Modules

by Bill Hoffman

Summary of the talk:

Originally developed as part of the National Institutes of Health (NIH) open source medical segmentation and registration toolkit ITK in 1999, CMake has grown to take on a vital role in the C++ ecosystem. Bill Hoffman, a founder of Kitware (www.kitware.com), and the creator of CMake will talk about where CMake is in 2022. The talk will start with a brief history of CMake and how it fits into the world of C++. It will then talk about recent developments to support C++20 modules.

For most of CMake's history, CMake has played catch up and implemented new features as compilers and IDEs have been released. With C++ modules, CMake developers have engaged the standards committee and compiler vendors to help craft the standard in such a way that CMake and other build systems can more seamlessly implement C++ modules. CMake has worked with Fortran modules for many years and has updated the ninja build tool to be able to dynamically update dependency information as it is discovered. To do this CMake requires a Fortran parser built into CMake. For obvious reasons CMake does not want to get into having its own C++ parser. This is the main driving force for pushing this work into the compilers. This talk will go over the road map for CMake C++ module support.

In addition to the history of CMake, C++ module support, this talk will include material covering important CMake features supporting the seamless building, testing and deployment of C++ across most computing platforms. In summary, listeners will learn about CMake origins, the roadmap of C++ module support in CMake and get an overview of the current set of features in CMake.

Pure Virtual C++ Videos Available

All videos from the Pure Virtual C++ 2023 conference are now online.

Pure Virtual C++ Videos Available

by Sy Brand

From the announcement:

Overall we had 18 videos on a wide variety of C++ topics, from Rust interop, to value semantics, to improving compiler errors.