d:\program files\microsoft visual studio\vc98\include\math.h(514) : error C2894: templates cannot be

来源:互联网 发布:淘宝会员修改身份认证 编辑:程序博客网 时间:2024/04/28 23:45

出错:d:\program files\microsoft visual studio\vc98\include\math.h(514) : error C2894: templates cannot be declared to have 'C' linkage

打开d:\program files\microsoft visual studio\vc98\include\math.h

出错点位:

##template<class _Ty> inline        _Ty _Pow_int(_Ty _X, int _Y)        {unsigned int _N;        if (_Y >= 0)                _N = _Y;        else                _N = -_Y;        for (_Ty _Z = _Ty(1); ; _X *= _X)                {if ((_N & 1) != 0)                        _Z *= _X;                if ((_N >>= 1) == 0)                        return (_Y < 0 ? _Ty(1) / _Z : _Z); }}

发现直接把这段代码屏蔽就OK了

所以只需

// template<class _Ty> inline//         _Ty _Pow_int(_Ty _X, int _Y)//         {unsigned int _N;//         if (_Y >= 0)//                 _N = _Y;//         else//                 _N = -_Y;//         for (_Ty _Z = _Ty(1); ; _X *= _X)//                 {if ((_N & 1) != 0)//                         _Z *= _X;//                 if ((_N >>= 1) == 0)//                         return (_Y < 0 ? _Ty(1) / _Z : _Z); }}



 

原创粉丝点击