首页 > C/C++ > VC 使用limits里的max 报错解决方法
2013
08-25

VC 使用limits里的max 报错解决方法

>e:\p\test\strtk.hpp(5206) : warning C4003: “max”宏的实参不足
1>e:\p\test\strtk.hpp(5206) : warning C4003: “max”宏的实参不足
1>e:\p\test\strtk.hpp(5273) : warning C4003: “max”宏的实参不足
1>e:\p\test\strtk.hpp(5666) : warning C4003: “max”宏的实参不足
1>e:\p\test\strtk.hpp(5666) : error C2589: “(”: “::”右边的非法标记
1>e:\p\test\strtk.hpp(5666) : error C2589: “(”: “::”右边的非法标记

有两个解决方法
1、可以在项目预处理定义添加 NOMINMAX
2、修改调用方试
把报错语句
return row_range_t(std::numeric_limits::max(),std::numeric_limits::max());
修改成
return row_range_t((std::numeric_limits::max)(),(std::numeric_limits::max)());

参考文献
http://blog.chinaunix.net/uid-17102734-id-2830143.html

最后编辑:
作者:dnybz
这个作者貌似有点懒,什么都没有留下。