今天运行以前的C++工程时,提示“error C2660:‘VarCmp’:function does not take 4 parameters”,网上有说“未安装SP6导致的”,也有说“build all一下就好了”,试了都没用。最后看到有人说修改"ATLBASE.H"

进去一看发现里面用的也只有3个参数。
工程没有动过,所以应该不是工程的问题,于是去https://docs.microsoft.com/搜了一下“VarCmp”

naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2N6aHRteXI=,size_16,color_FFFFFF,t_70#pic_center)
说明里也是4个,找了一下 “Oleauto.h”,发现也是3个,于是自己按说明加了一个
运行了一下“ATLBASE.H”报错,于是在“ATLBASE.H”的VarCmp末尾的末尾都加了个0,然后就OK了。

开森了啦!!!
本文解决了一个关于C++中VarCmp函数参数数量不匹配的编译错误,通过在ATLBASE.H文件中修改VarCmp函数定义,成功解决了errorC2660的问题。
9085

被折叠的 条评论
为什么被折叠?



