QML最高数量(浮点数/整数)可能

时间:2016-12-29 11:13:43

标签: qt math numbers qml

在JavaScript中,可能的最高整数是通过

定义的
Number.MAX_SAFE_INTEGER.

以及C ++中也可以使用std:

获得
std::numeric_limits<int>::max()

对于整数或双打,QML中是否存在这样的常数?

3 个答案:

答案 0 :(得分:3)

正如最初所怀疑的那样,文档中列出的2000000000号码不正确。此外,IMO这是一个重要的价值,不应该真正受到这种粗心的近似。 “周围”只应在实际值未知某些或不重要的情况下使用。

一个简单的测试可以验证QML中int属性的最大可能值是2147483647,还是预期的2^31 - 1

请注意,这不同于Number.MAX_SAFE_INTEGER这是一个JS的东西,而且该值是2^53 - 1 - 远远高于int给你的值。 Number是一个64位实数数据类型,它通过使用数字的53个分数位来支持整数,11个指数位未被使用。

答案 1 :(得分:0)

另一种替代方法是使用IntValidator。默认情况下,top和bottom属性包含最大和最小Qt int值。

readonly property IntValdiator intValdiator: IntValidator {}
readonly property int MAX_VALUE: intValidator.top
readonly property int MIN_VALUE: intValidator.bottom

答案 2 :(得分:0)

您需要的常量为-InfinityInfinity,或者Number.NEGATIVE_INFINITYNumber.POSITIVE_INFINITY