在 VS 2017 中遇到这个报错,
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cmath(132): error C2039: “max”: 不是“std”的成员
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cstdlib(34): note: 参见“std”的声明
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cmath(137): error C2039: “min”: 不是“std”的成员
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cstdlib(34): note: 参见“std”的声明
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cmath(427): error C2039: “max”: 不是“std”的成员
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cstdlib(34): note: 参见“std”的声明
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cmath(433): error C2039: “min”: 不是“std”的成员
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\cstdlib(34): note: 参见“std”的声明
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtgmath.h(203): error C2039: “max”: 不是“std”的成员
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtgmath.h(19): note: 参见“std”的声明
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtgmath.h(204): error C2039: “min”: 不是“std”的成员
1>d:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xtgmath.h(19): note: 参见“std”的声明
一个简单的解决方法: 包含头文件 algorithm 即可
#include <algorithm>
如果添加algorithm头文件后仍然报错,需要#include <algorithm>往前引用,防止其他头文件早于algorithm编译。
参考:https://blog.youkuaiyun.com/u010333737/article/details/90743786