求开光,求指导,模板升级后有问题,诚心求教,请高手们指导
从 VS2003 升到 VS2010 如下代码出现错误,好像是模板问题,诚心求教,请问怎么修复?
这段代码在文件中的位置 参见1楼
- C/C++ code
template<class _Other1, class _Other2> _Pair_base(_Other1&& _Val1, _Other2&& _Val2) : first(_STD forward<_Other1>(_Val1)), second(_STD forward<_Other2>(_Val2)) { // construct from moved values } 错误信息:
1) Error1error C2440: 'initializing' : cannot convert from 'int' to 'std::vector<_Ty> '
2) Error2error C2439: 'std::_Pair_base<_Ty1,_Ty2>::second' : member could not be initialized
相关信息
- C/C++ code
// TEMPLATE FUNCTION forwardtemplate<class _Ty> inline _Ty&& forward(typename identity<_Ty>::type& _Arg) { // forward _Arg, given explicitly specified type parameter return ((_Ty&&)_Arg); }[解决办法]
这个是stl库的代码吧,基本上不可能出问题。估计是你调用时的问题