我应该选择HUGE_VAL还是INFINITY
Should I prefer HUGE_VAL or INFINITY?
我一直想知道HUGE_VAL
宏常数和INFINITY
宏常数之间的确切区别,这个问题也讨论过。两者在功能上似乎是等效的。
除了从逻辑上区分有限但巨大的价值和真正的无限价值之外,有什么理由更喜欢一个而不是另一个吗?
特别是,我现在的用例是关于需要找到最大值的算法,在开始时,他们将当前找到的最大值初始化为-INFINITY
。-HUGE_VAL
可能更可取吗?如果你对其他使用情况有建议,请告诉他们。
使用C++时,应该使用标头中定义的std::numeric_limits<T>
类,而不是这些宏。这里有一个例子:
double val = std::numeric_limits<double>::max();
这些类专门用于实现支持的每种数字类型,即char、int、long、float、double等。
它们给出的最大值对于查找最大值特别有用,因为它们实际上是可以由查询类型表示的较大值。
相关文章:
- enum是C++中的宏变量还是整数变量
- 如果我只是不访问queue_front节点的子节点,而是将它们推到队列中呢?还是BFS吗
- 在命名空间中定义函数还是限定函数
- 架构决策:返回std::future还是提供回调
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 异常属于C++中的线程还是进程
- 在决定是通过参考还是通过价值时,尺寸真的是一个问题吗
- 如何在C++中确定文本文件中的元素是字符还是数字
- 返回值优化:显式移动还是隐式
- 是什么原因导致它无法编译?它是声明签名还是在函数本身的实现中
- 为什么需要知道一个类是平凡的还是有平凡的构造函数
- 强枚举类型定义:Clang Bug 还是 C++11 标准不确定性?
- 'string.assign(string.data(), 5)' 是明确定义的还是 UB?
- 在哪里放置我的函数?进入我的母语 Gui 还是进入我的演示者?
- 在这种情况下,我真的复制了字节还是复制了字符?
- node-gyp 的先有鸡还是先有蛋的问题:指向依赖项中的头文件
- CIN是逻辑1还是0?
- i++还是++i更适合这个程序?
- 我应该将外部标头放在 .h 文件还是.cpp文件中?
- 我应该选择HUGE_VAL还是INFINITY