Alt text:
A screenshot from the linked article titled “Reflection in C++26”, showing reflection as one of the bullet points listed in the “Core Language” section
A screenshot from the linked article titled “Reflection in C++26”, showing reflection as one of the bullet points listed in the “Core Language” section
There’s a pretty big difference though. To my understanding enable_if happens at compile time, while reflection typically happens at runtime. Using the latter would cause a pretty big performance impact over a (large) list of data.
Wouldn’t compilers be able to optimize runtime things out? I know that GCC does so for some basic RTTI things, when types are known at compile time.
For runtime reflection, no, you’d specifically be able to do things that would be impossible to optimize out.
But the proposal is actually for static (i.e. compile-time) reflection anyway, so the original performance claim is wrong.
Yeah, that’s what I was thinking of. I don’t know how C++ could reasonably have Java-like reflections anyway…
C++26 reflection is compiletime