variadic template (可变参数模板)是C++11中最新支持的功能。但是在Visual Studio 2012编译项目时报此类错误:error C2780:“enable_if::value,std::_Bind,_Vx0_t,_Vx1_t>>::type std::bind(_Rx(__thiscall _Farg0::* const)(_V0_t,_V1_t,_V2_t,_V3_t,_V4_t),_Vx0_t&&,_Vx1_t&&)':应输入3个参数,却提供了8个。这是因为在 V2012里_VARIADIC_MAX默认定义为5,因此不支持5个以上的参数输入。
工具/原料
Visual Studio 2012
方法/步骤
2
在“预处理器定义”窗体中增加一项:_VARIADIC_MAX=10
3
最后点击“应用”,保存修改。再次编译时就不会出现类似错误