Code: Select all
template
struct variadic_value_metatemplate_builder
{
template
struct build
{
template
using type = TT;
};
};
< /code>
(Compiler-Explorer-Link) < /p>
GCCs Fehler lautet: < /p>
:8:39: error: expansion pattern 'tt_Vs' contains no parameter packs [-Wtemplate-body]
8 | using type = TT;
Sie schreiben eine Testroutine für eine Gruppe von Vorlagen -Grafikoperationen. Einige sind aus der Form , einige sind usw. Sie möchten eine generische Testroutine für alle Formulare schreiben, die einen Formularparameter annehmen, einen Satz von passenden Grafikoperationen und einen Satz von Constexpr -Testwerten für die Parameter. Sie können dann so etwas wie: < /p>
machen
Code: Select all
generic_graphics_test::test()
TO irgendwie testen Sie die 2D- und 3D-lunverbaren Sorten von gfx_translate und gfx_scale . (wobei test () Instanzen von Build (oben) als Vorlagenparameter nimmt, die hier die (rohen, ungelösten) Template-Operationen repräsentieren (als Functors oder so)).

Leider gibt es leider kein generisches "Template-Parameter-Parameter-von-variadic-Typ" Keyword Doch < /em> (wahrscheinlich sehr nett, aber wahrscheinlich sehr schwer zu schreiben), das jeder mögliche By-By-Temlabo-Temlpa-Temlporte zulässt, das jeder mögliche By-By-By-By-By-Templa-Templaper zulässt. Vorlage.