C++ Club is a semi-regular online meeting of C++ enthusiasts to discuss the latest news, events and anything else related to the C++ programming language. This is where I post meeting notes. For videos, visit my YouTube channel. There is also a podcast.

Find me on , , and .

Meetings Most recent Topics 2D Graphics 3D Graphics ABI Abseil Accio ACCU Actors Adi Shavit ADL Adobe Adrien Devresse ADSP Aggregates Agner Fog Alex Stepanov Alfred Bratterud Algorithms Alignment Alisdair Meredith Allocators AMA AMD Anastasia Kazakova Anders Knatten Andreas Fertig Andreas Kling Andreas Weis Andrei Alexandrescu Andrew Pardoe Andrew Sutton Andrey Karpov Andrzej Krzemieński Ansel Sermersheim Anthony Williams Antipatterns Antoine Morrier Antoine Tran Tan Anton Bikineev any API design Apple Aras Pranckevičius ARM Arne Mertz Arno Schödl Arthur O'Dwyer Ashley Hedberg ASIO Assembly Async Atomic Attributes Audio auto Backward compatibility bad_alloc Bad practices bake Balázs Török Barbara Geller Barbara Liskov Barry Revzin Bartek Filipek Bazel Beast Beginners Beman Dawes Ben Craig Ben Deane Benchmarking Best practices Bill Hoffman Billy Baker Biotech Bitcoin Bjarne Stroustrup Björn Fahller Blaze Blindness Bloaty McBloatface Bloomberg Books Boost Boris Kolpackov Boris Schäling Borland Botond Ballo Branimir Karadzic Brigand Bryce Adelstein Lelbach Bryce Lelbach BSI BSON Buckaroo Build Build systems Build2 Builder pattern Burkhard Kloss C-Reduce C++ Builder C++ Core Guidelines C++ Quiz C++ Standard C++ Standard Committee C++ Standard Library C++/WinRT C++11 C++14 C++17 C++20 C++23 C++26 C2 Caffe2 Calendars Callbacks Carbon Carl Cook CATCH Chandler Carruth Charles Bay Cheatsheet Cheatsheets Cheerp Chris DiBella Chris Kolhoff Chris Lattner Chrome chrono Clang Clang-format Clara Clare Macrae CLI Cling CLion Clojure CMake CMS Code style Coding gudelines Coding guidelines Coding standard Coding standards Coding style Colby Pike Collin Moon Command-line arguments Committee Comparison Comparisons Compile-time programming Compiler Explorer Compilers Compression Computer vision Conan Concepts Concurrency Configuration Conor Hoekstra Const correctness consteval constexpr Containers Contracts CopperSpice Copy elision Corentin Jabot Coronavirus Coroutines Courses CppCast CppChat CppCon cppcoro CppEurope CppInsights CppQuiz CPU CRTP Cryptography CryptoPP CTAD CTRE CUDA CURL Currying Cygwin D Daisy Hollman Dale Mellor Dan Saks Daniela Engert Daniele Pallastrelli Darwin Data-oriented design Data structures Database Dave Abrahams David Gross David Sankel Debugging Denmark Dependency management Detection idiom Dirk Haun Discord DLL Doctest Documentation Dogbolt Doom DPCPP Drogon Dropbox East Const Elliot Goodrich Embarcadero Embedded Emoji endl Energy efficiency Enums Epochs Eric Niebler Erik Engheim Error Handling Ethics ETL Events Evil code Exceptions Executors expected Fabian Kosmale Fabien Sanglard Facebook Feature macros Ferret Filesystem FizzBuzz Floating point {fmt} Fold expressions Folly Fonts Formatting FoundationDB Frank Birbacher Frank Denneman Freestanding Friends Frozen FRP FSM Fuchsia function Functional Functional programming Futures Gabriel Dos Reis Gamedev Gašper Ažman GCC Geoff Romer Gianluca Delfino Giorgio Azzinnaro Go Godbolt C++ Insights Andreas Fertig QuickBench Bjarne Stroustrup CppCast Concepts C++20 UB Pure Virtual C++ Microsoft Daniil Goncharov Xmake Interview Assertions Boost Google Gor Nishanov Gordon Brown GPU Gromoire GSL GUI Guile Guy Davidson Hana Hana Dusíková Harald Achitz Hartmut Kaiser Heap Herb Sutter Herbceptions HFT History HOF HOPL Houdini Howard Hinnant HPX Hristo Stamenov Hunter ICC id Software IDE IIFE Image processing Immutable IncludeOS Infer Initialization Inlining Integers Intel IntelliCode Interactive Interop Interview iostreams IoT Isabella Muerte IsCool ISO Iterators Ivan Čukić Ivan Gagis J.F. Bastien Jackie Kay James McNellis Jan Wilmans Jason Merrill Jason Turner Jean Guegant Jean-Louis Leroy JeanHeyd Meneide Jeff Preshing Jefferson Amstutz Jens Weller JetBrains JF Bastien Jo Boccara Joel de Guzman John D. Woolverton John Lakos John M. Dlugosz John MacFarlane John R. Bandela John Regehr Jon Kalb Jonathan Boccara Jonathan Coe Jonathan Müller JSF JSON Juan Arrieta JUCE Julian Templeman Julien Jorge JWST Kacper Kołodziej Kate Gregory KDAB Kernel Kevlin Henney Kilian Henneberger Kirk Shoop Klaus Iglberger Lambda Lambdas Language rankings Lars Knoll launder Lazy evaluation Learning Legacy code Leor Zolman Lesley Lai Lewis Baker Lex Friedman lexy Licensing Lifetime Linear algebra Link collections Linker Linkers LLVM Lock-free Logging Louis Brandy Lua Mach7 Macros Mailing Make Malte Skarupke Marc Gregoire Marco Arena Marian Luparu Marius Bancila Mark Elendt Marshall Clow Martin Bond Martin Hořeňovský Martin Reddy Martin Waplington Mathieu Ropert Maths Matt Godbolt Matt Klein mdspan Meeting C++ Meltdown mem_fn Member functions Memory management Memory model Memory safety Memory tagging Meson Metaclasses Metal Michael Park Microsoft Mike Acton MinGW ML Mocking Modern C++ Modules mold Monad Morgan Stanley Move Semantics MS-DOS MSBuild MSVC MTuner Multimethods Multithreading Nameof Naming NASA Nathan Myers Nathan Sidwell Networking Niall Douglas Nicolai Josuttis Ninja Nix Node.js NUMA Numerical programming NumPy NVIDIA Oculus Odin Holmes ODR Oleksandr Koval One API OOP OpenCL OpenMP Optimization optional Oracle ORM Outcome Overload Package management Parallelism Parameter passing Parsing Passing parameters Pattern matching Patterns Paul McJones PCH PEG PEGTL Peter Dimov Peter Goldsborough Peter Sommerlad PGI Phil Nash Philip Trettner Philippe Groarke Philippe M. Groarke PIMPL Piotr Padlewski Pitchfork Podcast Poll Polls Polymorphism pragma once Pranay Kumar Premake Preprocessor Profiling Project layout Project template Pronunciation PVS-Studio pybind pystring Python PyTorch Qt Quantum computing Quentin Duval Radek Vít RAII Rainer Grimm Random numbers Ranges Raspberry Pi Raymond Chen Reactive Reactive programming Reddit Refactoring Reflection Regular expressions Réka Kovács Renato Garcia René Rivera REPL REST Retro Richard Smith Robert Ramey Robert Schumacher Rocket science Roger Orr RPC Runtime compilation Runtime patching Rust RVO RxCpp Sanitizers Scientific computing Scott Meyers Scott Wardle Scott Wolchok Sean Barrett Sean Parent Security Senders/Receivers Serenity OS Serialization SFINAE SFML Shafik Yaghmour ShiftSort Shogun Sign Signals Signed SIMD Simon Brand sltbench sol sol2 Sourcetrail Space Spaceship operator SpaceX Span spdlog Spectre SQLite SSO Static analysis Stb Stephan T. Lavavej Stephen Dewhurst Steven Simpson STL string_view Strings Structured bindings STXXL Survey Sven Gregori Swift SYCL system_error Task Taskflow Tasks TBB TDD Teaching TensorFlow Terminal Testing Text Thomas Becker Timers Timezones Timur Doumler TIOBE Tips Titus Winters TMP Toby Allsopp TOML Transwarp Tricks Trip report Tristan Brindle Trompeloeil TUI Turbo Vision type_safe Type erasure Type punning Type safety Type traits UB UFCS ULID Unicode Units Unity build UUID Vaccine Valentin Galea Valgrind value_ptr Value categories Value semantics variant Varun Ramesh Vasa VCPkg Verdigris Vicente J. Botet Escribá Victor Ciura Videos Viktor Zverovich Vinnie Falco Virtual functions VisualAssistX Visualization Vittorio Romeo volatile VR VS2017 VS2019 VS2022 VSCode VxWorks Walter E. Brown Webdev Webkit WG21 Whole Tomato Win32 Windows Wt Xcode xmake XML YouTube zapcc