arc4random_uniform()中的未知错误

时间:2017-01-25 20:15:13

标签: swift random sprite-kit

这些行与我合作了3天,突然发生了错误,xcode产生了一个断点。

断点出现在randonTop变量旁边。

名为bad instruction的错误。

这是我的代码:

let top = self.frame.maxY
        let bottom = self.frame.minY
        let right = self.frame.maxX
        let left = self.frame.minX
        // getting position
        var position: CGPoint!
        switch edge {
        case "top":
            let randomTop = arc4random_uniform(UInt32((right - left) + 1) + UInt32(left))
            position = CGPoint(x: CGFloat(randomTop), y: top + (globalRadius + (globalRadius * 0.5)))
            break
请帮忙。

编辑::

let top = self.world.size.height
        let right = self.world.size.width
        // getting position
        var position: CGPoint!
        switch edge {
        case "top":
            let randomTop = arc4random_uniform(UInt32(right))
            position = CGPoint(x: CGFloat(randomTop), y: top + (globalRadius + (globalRadius * 0.5)))
            break

问题是变量left的负号。

回答::

感谢评论,问题是arc4random_uniform()功能的输入为负值而违反了

0 个答案:

没有答案