Member einer Struktur traversieren

29/06/2015 - 11:05 von Olaf Krzikalla | Report spam
Hallo allerseits,

gibt es eigentlich in dem jetzigen (C++14) oder irgendeinem
mittelfristig folgenden C++ eine Möglichkeit, über die (Daten-)Member
einer Struktur/eines Typen zu traversieren?
Ich stelle mir das folgendermaßen vor:

template<class T, class FUN>
void traverse_member(FUN f)
{
// magic stuff calling FUN (i.e. generic lambda) for
// every pointer-to-member of T
// throws exception/does nothing, if T is fundamental or an array
}

Alle mir bisher gelàufigen Varianten wie z.B. Type-Traits mit einer
zusàtzlichen Member-Liste sind mit Schmerzen verbunden. Kennt jemand
eine schöne Technik?


Ciao Olaf
 

Lesen sie die antworten

#1 Markus Schaaf
30/06/2015 - 14:47 | Warnen spam
Am 29.06.2015 um 11:05 schrieb Olaf Krzikalla:

Alle mir bisher gelàufigen Varianten wie z.B. Type-Traits mit einer
zusàtzlichen Member-Liste sind mit Schmerzen verbunden. Kennt jemand
eine schöne Technik?



"Annotations" über Kommentare und ein Code-Generator. Allgemein will man
ja sowieso nicht alle Member bzw. auch noch Metadaten.

MfG

Ähnliche fragen