我有这段代码:
let startX = CGFloat(arc4random_uniform(maxX + (quarterX*2))) - quarterX
其中 quarterX 是CGFloat。
这行代码给出了构建错误
无法使用类型的参数列表(CGFloat,CGFloat)调用' - '
这对我来说似乎很奇怪。这里有什么用?
答案 0 :(得分:1)
arc4random_uniform
需要UInt32
,但您传递的是CGFloat
(我认为maxX属于同一类型)。所以你必须转换这个表达式:
maxX + quarterX * 2
到UInt32
:
let startX = CGFloat(arc4random_uniform(UInt32(maxX + quarterX * 2))) - quarterX
让我说错误信息有点误导,完全无用:)