TGViewer
C++ - Reddit C++ - Reddit @r_cpp · 229 subscribers
Post #24384 15
Is it (and if not, what technical reason is preventig from) possible to have optional fields based on generic struct value

Lets say I wanted to create a generic struct for a vector for storing coordinates withing n dimmensions. I could do a separate struct for each dimension, but I was wondering why couldn't I do it within a single non-specialized generic struct, something like so:

template<int n> struct Vector {
std::array<float, n> data;
float& X = data0;
float& Y = data1;
// Now lets say if n > 2, we also want to add the shorthand for Z
// something like:
#IF n > 2
float& Z = data2;
};

Is something like this a thing in C++? I know it could be done using struct specialization, but that involves alot of (unnecesearry) repeated code and I feel like there must be a better way(that doesnt involve using macros)

https://redd.it/1pa3d21
@r_cpp
Reddit From the cpp community on Reddit Explore this post and more from the cpp community
More from @r_cpp
  1. Oct 11, 2026wxWidgets 3.2.12 and 3.3.4 Released https://wxwidgets.org/news/2026/10/wxwidgets-3.2.12-an…
  2. Oct 11, 2026VKRT NES Remaster — an open-source C++20 NES emulator with an observation-driven remasteri…
  3. Oct 11, 2026Right way to test async code https://redd.it/1x2wqgz @r_cpp
  4. Oct 10, 2026Yantra: an LALR(1) parser generator for C++23 Yantra: an LALR(1) parser generator for C++2…
  5. Oct 10, 2026Opting in, and back out again https://dryperspective.github.io/posts/opting-in/ https://re…
  6. Oct 10, 2026I’m Building Bursztyn OS a Polish Operating System From Scratch I’m building Bursztyn OS,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →