【问题标题】:C#/QML types convertion (double/real/float)C#/QML 类型转换(double/real/float)
【发布时间】:2012-01-08 17:08:57
【问题描述】:

我的 C# 项目正在从 QML 文件中读取一些配置。

问题是我不确定某些转换...

QML        C#
int    <-> int
string <-> string
bool   <-> bool

没问题

我不确定 QML 中的实数/双精度(在 C# 中浮点/双精度) 我查找了一些有关精度的信息,但没有发现任何非常清楚的信息。

QML 中的 double 是否等同于 C# 中的 double ? QML 中的 real 等价于 C# 中的 float 吗?

【问题讨论】:

    标签: c# floating-point double qml type-conversion


    【解决方案1】:

    C# 规范说:

    C# 支持两种浮点类型:float 和 double。 float 和 double 类型使用 32 位单精度和 64 位双精度 IEEE 754 格式表示

    所以 float 和 double 之间的唯一区别是 C# 中的精度。

    The QML reference says for Double:

    双精度数有一个小数点,并以双精度、IEEE 浮点格式存储。

    and for the real

    在 QML 中,所有实数都以单精度、IEEE 浮点数存储 格式。

    他们相互尊重 IEEE 754 标准。 所以 QML 中 real 和 double 之间的唯一区别也是精度。

    根据this table,将C# float 类型解析为真正的QML 类型并将C# double 类型解析为QML 中的double 可能是个好主意。

    【讨论】:

    猜你喜欢
    • 2018-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多