c++ - C++ 中的 "minmax.h"是什么?

标签 c++ minmax

我一直在用#include <minmax.h>在我的脚本中并使用 min()max()正如预期的那样。我向某人展示了这个,他们以前从未见过,说这对他们不起作用,并问我为什么不包括 <algorithm>并调用 std::min()std::max() .

所以我的问题基本上是,为什么我不是?我在一本关于 C++ 的书中发现了这一点:“C++ 设计模式和衍生品定价”。谷歌搜索 "minmax.h" ,我在最上面的结果中找到了对那本书的引用,所以更让我觉得这是不正常的。

谁能告诉我这是什么?

最佳答案

C++ 编程语言伴随着 C++ Standard Library .没有<minmax.h> C++ 标准库中的头文件。标准库中的头文件没有 .h 扩展名。此外,头文件也不是移植的 C 标准库的一部分,因为这些头文件具有 c 前缀,如 <cmath> (替换 C 标准库 <math.h> header ),<ctime> (替换 <time.h> header )在 C++ 标准库中使用时。

std::minstd::max函数在 <algorithm> 中声明标题。

话虽如此,确实似乎有一些名为 <minmax.h> 的 MS header 。内C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt定义 min 的文件夹和 max宏,而不是函数。但是,这是一些特定于实现的 header ,您应该使用标准 <algorithm>头代替。

关于c++ - C++ 中的 "minmax.h"是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62394972/

相关文章:

java - 免费库,例如 Java 的 C++ 机器人类

c# - 在没有序列化的情况下深度复制数组c#

algorithm - 带转置表的 Alpha-beta 剪枝,迭代加深

c++ - If 条件问题 (C++)

c++ - 如何在 Delphi 中使用由 dll 导出的 C++ 类

Java minmax 算法返回空移动并且无法正确撤消移动

c - 指针无法正确打印值

javascript - AngularJS |检查箭头和用户输入的最大和最小输入值

c++ - 在 Objective-C 中使用 .mm 文件有哪些怪癖/惊喜?

c++ - 变量的初始化列表