Visual C++ 中无法使用标准库在<algorithm>头中定义了两个模板函数std::min() 和 std::max()
经查找原因是:
在windef.h中
#ifndef NOMINMAX #ifndef max #define max(a,b) (((a) > (b)) ? (a) : (b)) #endif #ifndef min #define min(a,b) (((a) < (b)) ? (a) : (b)) #endif #endif /* NOMINMAX */
那解决的方法就是将 NOMINMAX 加到 preprocessor difinitions 中。
或者使用下面的方式:
(std::max)(a, b);
(std::min)(a, b);
原文:http://www.cnblogs.com/soulgon/p/3539674.html