我有一个 CGFloat 属性,有时我得到一个 Float64 类型或 Float32 类型的返回值。我可以将两者安全地存储到 CGFloat 吗?
最佳答案
来自标题:
// CGBase.h
typedef float CGFloat;
// MacTypes.h
typedef float Float32;
typedef double Float64;
所以 CGFloat
和 Float32
都是 float
而 Float64
是 double
所以你会失去精度。
(编辑澄清:这是针对 32 位系统,例如 iPhone。如果您正在构建 64 位系统,CGFloat
被定义为 double
。)
关于iphone - 我可以安全地使用 CGFloat 来保存 Float64 或 Float32 值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2753488/