2017-01-02 1 views
-3
let Rating = self.currentPerson.Rating // This is a NSNumber 

Rating -= 1 

Ce que je suis en train de faire, est de prendre un x value du Rating, puis imprimez le new value of Rating.Encaisser valeur de NSNumber

Comment procéder correctement?

+0

Ceci ne compile pas: * l'opérateur binaire '- =' ne peut pas être appliqué aux opérandes de type 'NSNumber' et 'Int' * – vadian

Répondre

2

Pour effectuer cette opération dans la façon dont vous le souhaitez, vous devez écrire votre propre fonction pour manipuler:

infix operator -= 

func -=(lhs:inout NSNumber, rhs:Double) { 
    lhs = NSNumber(value: lhs.doubleValue - rhs) 
} 

Vous devez également utiliser une variable plutôt que d'une constante dans votre mise en œuvre:

Pour que la valeur puisse être modifiée.