テンプレート型のために引数の数が異なるいくつかのテンプレート化された関数があります。この関数はマクロ定義でラップされています。
#define SomeTemplate(TemplateType, Arguments) someFunc<TemplateType>(Arguments);
関数呼び出しに引数を 1 つしか使用していない場合はすべて問題ありませんが、さらに多くの引数が必要です。次のように、さまざまなマクロの定義を通じてそのようなことを行うブーストを調べました。
#define TEMP_1(Arg1) someFunc<Template>(Arg1);
#define TEMP_2(Arg1, Arg2) someFunc<Template>(Arg1, Arg2);
#define TEMP_3(Arg1, Arg2, Arg3) someFunc<Template>(Arg1, Arg2, Arg3);
しかし、このコードはコンパイラー用に移植可能とマークされています。任意の数の引数でいくつかの定義を使用する方法があります。どうやってやるの?