我有一些模板化函数,由于模板类型,它具有不同数量的参数。此函数包含宏定义。
#define SomeTemplate(TemplateType, Arguments) someFunc<TemplateType>(Arguments);
当我只使用一个参数进行函数调用时,一切都还可以,但我还需要更多。我看了看它通过定义不同的宏来做这些事情,比如:
#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);
但是这段代码标记为编译器可移植。有一些方法可以使用一些带有任意数量参数的定义。我怎么能这样做?