Protocole NSDecimalNumberBehaviors, classe NSNumberHandler
Eddy58
Membre
Hello !
Je voudrais utiliser la méthode decimalNumberByRoundingAccordingToBehavior: de la classe NSDecimalNumber, quelqu'un aurait-il un exemple sous la main pour l'utilisation du protocole NSDecimalNumberBehaviors ?
Je vois qu'il est aussi possible de passer par la classe NSDecimalNumberHandler, mais je ne vois pas plus comment l'utiliser avec mes objets de classe NSDecimalNumber... ???
Je voudrais utiliser la méthode decimalNumberByRoundingAccordingToBehavior: de la classe NSDecimalNumber, quelqu'un aurait-il un exemple sous la main pour l'utilisation du protocole NSDecimalNumberBehaviors ?
Je vois qu'il est aussi possible de passer par la classe NSDecimalNumberHandler, mais je ne vois pas plus comment l'utiliser avec mes objets de classe NSDecimalNumber... ???
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Heureusement, une recherche sur CocoaBuilder me donne l'astuce : Il faut créer une instance de classe NSDecimalNumberHandler, puis la donner en paramètre aux méthodes de la classe NSDecimalNumber qui font appel au protocole NSDecimalNumberBehaviors.
[tt]
NSDecimalNumber *originalNumber=[NSDecimalNumber decimalNumberWithString:@321.716];
NSDecimalNumberHandler *roundingBehavior=[NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundPlain scale:2 raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:NO];
NSDecimalNumber *roundingNumber=[originalNumber decimalNumberByRoundingAccordingToBehavior:roundingBehavior];
[/tt]