如何修复错误"运营商的结果'> ='未使用"

时间:2017-11-28 20:18:29

标签: swift

我有上面提到的错误,对于下面评论的两行,使用等号工作,但是当我使用'> =' sign ...错误继续显示。我的暂停功能不是错误,我用等号测试了它,所以请你告诉我要修复什么。谢谢!

func addScore(playerWhoWon : SKSpriteNode){

    ball.position = CGPoint(x: 0, y: 0)
    ball.physicsBody?.velocity = CGVector(dx: 0, dy: 0)

    if playerWhoWon == main {
        score[0] >= 10 // THAT"S WHERE I GET MY ERROR
        pauseGame()
        ball.physicsBody?.applyImpulse(CGVector(dx: 10, dy: 10))
    }
    else if playerWhoWon == enemy {
        score[1] >= 10 // SECOND LINE WHERE I GET MY ERROR
        pauseGame()
        ball.physicsBody?.applyImpulse(CGVector(dx: -10, dy: -10))
    }

    topLbl.text = "\(score[1])"
    btmLbl.text = "\(score[0])"
}

2 个答案:

答案 0 :(得分:3)

根据您的previous question,您应该做的是创建if声明:

if score[0] >= 10 {
    pauseGame()
}

我也强烈建议你花很多时间阅读Apple的Swift Programming Language书。

答案 1 :(得分:2)

使用等号(=)表示赋值。当您说:score[0] = 10时,表示您将10分配给数组score的第一个元素。这就是它运作的原因。

使用大于或等号(>=)表示比较,因此它会返回一个布尔值作为比较结果。你没有做任何事情,所以这就是你得到警告的原因。

当您使用返回结果并且不想使用该结果的内容时,您可以使用:

_ = score[0] >= 10

你肯定不应该在你的情况下这样做,正如@rmaddy所提到的,你应该使用if声明来解决你的问题。