由于Swift缺乏CGFloat的隐式转换而造成的混乱

由于Swift缺乏CGFloat的隐式转换而造成的混乱,第1张

由于Swift缺乏CGFloat的隐式转换而造成的混乱

这是一个问题

double
,以
float
转换。

在64位计算机上,

CGFloat
定义为
double
并且您将编译它而不会出现问题,因为
M_PI
x
都是双精度。

在32位计算机上,

CGFloat
是,
float
M_PI
仍然是两倍。不幸的是,Swift中没有隐式强制转换,因此您必须显式强制转换:

return (CGFloat(M_PI) * (x) / 180.0)

180.0
文字的类型被推断。

在Swift 3中

M_PI
已弃用,请
CGFloat.pi
改用:

return (x * .pi / 180.0)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5020058.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-15
下一篇2022-11-15

发表评论

登录后才能评论

评论列表(0条)

    保存