问题描述
- C++ functional中的template在编译的时候报错
- template模板代码为:
1 template2 class _Arg0> _Call_wrapper<_Callable_pmd<_Rx _Arg0::*const _Arg0>
3 mem_fn(_Rx _Arg0::*const _Pmd)
4 { // return data object wrapper
5 return (_Call_wrapper<_Callable_pmd<_Rx _Arg0::*const _Arg0> >(_Pmd));
6 }所报的错误为:错误 1 error C2143: 语法错误 : 缺少“;”(在“<”的前面) 错误 2 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
错误 3 error C2988: 不可识别的模板声明/定义
错误 4 error C2059: 语法错误 : “<”
错误 5 error C2653: “_Arg0”: 不是类或命名空间名称错误 6 error C2645: 指向成员的指针没有限定名(找到“:: *”)
错误 7 fatal error C1903: 无法从以前的错误中恢复;正在停止编译错误 8 error C2143: 语法错误 : 缺少“;”(在“<”的前面)
错误 9 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
错误 10 error C2988: 不可识别的模板声明/定义
错误 11 error C2059: 语法错误 : “<”
错误 12 error C2653: “_Arg0”: 不是类或命名空间名称错误 13 error C2645: 指向成员的指针没有限定名(找到“:: *”)
错误 14 fatal error C1903: 无法从以前的错误中恢复;正在停止编译C++在编译的时候报了一大堆错误,
解决方案
http://www.cnblogs.com/qlwy/archive/2012/03/21/2410045.html
时间: 2024-08-31 11:06:56