gpt4 book ai didi

ios - 在 iPhone 5S 上的两个 float 之间生成随机 float

转载 作者:搜寻专家 更新时间:2023-11-01 06:49:13 25 4
gpt4 key购买 nike

这在 iPhone 5 上运行良好,但在 iPhone 5S 或 iPad Air 上运行不正常。

找不到接受所提供参数的“+”重载

为什么?

func randomFloat(from:Float, to:Float) -> Float { 
let rand:CGFloat = CGFloat(arc4random() % 1000) / 1000
return (rand) * (to - from) + from
}

最佳答案

诀窍是使用 CGFloat 而不是 Float

func randomFloat(from:CGFloat, to:CGFloat) -> CGFloat {
let rand:CGFloat = CGFloat(arc4random() % 1000) / 1000
return (rand) * (to - from) + from
}

您看到的问题是 CGFloat 根据体系结构别名为不同的类型。对于 32 位 ARM,(iPhone 4S 和 5),它内部是一个 Float,但对于 arm64,它实际上是一个 Double。如果你只是使用 CGFloat 而不是 Float 来进行类型转换,它会工作得很好

关于ios - 在 iPhone 5S 上的两个 float 之间生成随机 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24562516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com