, dass ich einen Basistyp haben und einige abgeleitete Typen:Wie kann ich eine Tupelinstanz aus einer anderen Tupelinstanz erstellen, die statisch nur Indizes auswählt, die eine bestimmte Typregel erfüllen? Angenommen
struct base {};
struct d1 : base {};
struct d2 : base {};
Nehmen wir an, ich ein Tupel erstellen wie:
std::tuple<double, d1, d2, int> t(1.0, d1(), d2(), 1);
Ist es möglich, meta/Runtime-Programmierung verwenden zu generieren:
Ich habe eine Antwort auf Stack-Austausch, die mich den neuen Typ definieren würde, aber ich habe nicht herausgefunden, wie die Laufzeit-Compo ausgewählt aus dem ursprünglichen Tupel. Der Stapelaustausch Beitrag ist hier:
https://codereview.stackexchange.com/questions/115740/filtering-variadic-template-arguments
Also, was ist mit diesem Beitrag hast du verwirrend gefunden? Was hast du versucht, das hat nicht funktioniert? – Barry
Und deine Antwort ist "ja, es ist möglich". – Yakk
Startpunkt: Sie müssen wissen, was der Index der Typen ist, die Ihrem Typprädikat entsprechen. – user2296177