关于NOMINMAX这个预处理宏

Posted For The Glory

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于NOMINMAX这个预处理宏相关的知识,希望对你有一定的参考价值。

标准库在<algorithm>头中定义了两个模板函数std::min() 和 std::max()。通常用它可以计算某个值对的最小值和最大值。可惜在 Visual C++ 无法使用它们,因为没有定义这些函数模板。原因是名字min和max与<windows.h>中传统的min/max宏定义有冲突。为了解决这个问题,Visual C++ 定义了另外两个功能相同的模板:_cpp_min() 和 _cpp_max()。我们可以用它们来代替std::min() 和 std::max()。为了禁用Visual C++中的 min/max宏定义,可以在包含<windows.h>头文件之前加上:NOMINMAX

 

转自:http://blog.163.com/fleeting_ash/blog/static/663410862009310113424930/

以上是关于关于NOMINMAX这个预处理宏的主要内容,如果未能解决你的问题,请参考以下文章

细节问题

笔记3:预处理器-宏定义

C-宏定义, 预处理, 条件编译

KEIL编译器预处理器和预定义宏(include,ifdef,def等)

#define预处理宏定义命令

是否可以在 C 宏中放置条件预处理器?