Function and Class Design with C++2x is a one-day onsite training course with programming examples, taught by Jeff Garland. It is offered at the Gaylord Rockies from 09:00 to 17:00 Aurora time (MDT) on Saturday, September 19th, 2026 (immediately following the conference). Lunch is included.
◈ Register Here ◈ See Other Offerings ◈
Course Description
C++20 to C++26 brings a massive number of new language and library features – which can feel overwhelming to developers coming from older standards. This tutorial focuses on introducing those tools and how to use them in construction of functions and classes — which are the foundation of C++ programs. The tutorial is based, first and foremost, on the presenters experience building production large non-stop distributed systems with C++2 and also his work on C++ libraries, including work on the C++ standard library. We’ll focus on features with wide deployment which can be utilized in production systems today.
Participants will leave with a base knowledge of applying C++2x features to their designs and projects. In particular, concepts, ranges and range algorithms, aggregate types, advanced error handling, and other features.
Prerequisites
Participants should bring a working knowledge of writing C++ programs. We’ll assume some basic knowledge of C++11, lambdas, and smart pointers.
Course Topics
The tutorial is divided into 5 primary sections
- Part 0: Overview & Goals
- Part 1: C++2x Essentials
- Part 2: Concepts
- Part 3: Function Design in C++2x
- Part 4: More C++2x Essentials
- Part 5: Class Design – Wrap-Up and Discussion
Course Instructor

Jeff Garland has over 40 years of experience designing and building large-scale, distributed software systems in mission-critical environments across diverse domains, including telecommunications, industrial process control, satellite ground control, IP-based communications, and financial systems.
An active member of the C++ community since 2000, Jeff has served in a variety of leadership roles within Boost. He developed the Boost.datetime library and became a co-author of the C++11 chrono proposals. Since 2018, he has been a regular participant in the ISO C++ committee, currently serving as Vice-Convenor, Vice-Chair of the Library Working Group, and as a member of the Directions Group. In 2024, he co-founded the Beman Project to improve the development and accessibility of proposed C++ standard libraries.
Jeff holds a Master’s degree in Computer Science from Arizona State University and a Bachelor of Science in Systems Engineering from the University of Arizona, and is Principal Consultant at CrystalClear Software, Inc.