我正在使用visual studio 2012和上面的错误弹出窗口。我的代码是正确的,但似乎编译器限制为7个参数。如果我想传递7个参数,我该怎么办?
我可以传递结构但最好不要在可能的情况下更改我的代码。
答案 0 :(得分:10)
VS2012不完全支持可变参数模板。另请参阅此Blogpost:http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx
通过定义此宏_VARIADIC_MAX
,您可以将参数的最大数量设置为10。
所以只需做#define _VARIADIC_MAX 10
。
对于std :: thread,默认值为5,2标准参数+5可变参数。总的来说,您可以通过设置上面的值来传递多达12个参数。