CppCon 2016: "C++14 Reflections Without Macros, Markup nor External Tooling.."
http://CppCon.org — Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/cppcon/cppcon2016 — C++ was lacking the reflections feature for a long time. But a new metaprogramming trick was discovered recently: we can get some information about POD structure by probing it's braced initializes. Combining that trick with variadic templates, constexpr functions, implicit conversion operators, SFINAE, decltype and integral constants we can count structure's fields and even deduce type of each field. Now the best part: everything works without any additional markup nor macros typically needed to implement reflections in C++. In this talk I'll explain most of the tricks in detail, starting from a very basic implementation that is only capable of detecting fields count and ending up with a fully functional prototype capable of dealing with nested PODs, const/volatile qualified pointers, pointers-to-pointers and enum members. Highly useful use-cases will be shown a the end of the talk. You may start experimenting right now using the implementation at https://github.com/apolukhin/magic_get. — Antony Polukhin Yandex Hi, I'm Antony Polukhin, the author of Boost.TypeIndex and Boost.DLL libraries; maintainer of the Boost.LexicalCast, Boost.Any, Boost.Variant and Boost.Conversion libraries. I'm also the author of of the "Boost C++ Application Development Cookbook" — Videos Filmed & Edited by Bash Films: http://www.BashFilms.com Work at Hudson River Trading (HRT): https://tinyurl.com/safxfctf

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains

CppCon 2016: “From Numerical Cosmology to Efficient Bit Abstractions for the Standard Library"

CppCon 2014: Andrei Alexandrescu "Optimization Tips - Mo' Hustle Mo' Problems"

CppCon 2016: Arthur O'Dwyer “Template Normal Programming (part 1 of 2)”

Why Aliens Would NEVER Invade Africa

Linus Torvalds: AI Is Changing Linux Fast

Co-Creator of Haskell: Functional Programming, Thinking in Types, Useless Languages | Simon Jones

CppCon 2017: Vinnie Falco “Make Classes Great Again! (Using Concepts for Customization Points)”

CppCon 2016: Ben Deane “Using Types Effectively"

Tips for C Programming

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

BeCPP Symposium 2026 - Herb Sutter - C++ Growing in a world of competition, safety, and AI

CppCon 2015: Scott Schurr “constexpr: Introduction”

CppCon 2016: David Sankel “Building Software Capital: How to write the highest quality code and why"

Keynote: I Fixed Move Semantics - Jason Turner @cppweekly

CppCon 2017: James McNellis “Everything You Ever Wanted to Know about DLLs”

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

RollerCoaster Tycoon Optimizations are Insane

CppCon 2014: Herb Sutter "Lock-Free Programming (or, Juggling Razor Blades), Part I"

