私はまだ iOS 開発に少し慣れていないので、間違った用語を使用していたらご容赦ください。電卓タイプのアプリを作成しましたが、ユーザーが数値の丸め方を制御できるようにしたいと考えています。私が使用しているコードは次のとおりです。
-(NSString*)calculateWidthFromHeightString:(NSString*)height usingDimensions:(Favorite*)dimensions{
int decimalPlaces = [self.userData.rounding intValue];
NSUInteger *roundingMethod;
if ([self.userData.roundingMode isEqualToString:@"up"]) {
roundingMethod = NSRoundUp;
}
else if ([self.userData.roundingMode isEqualToString:@"plain"]) {
roundingMethod = NSRoundPlain;
}
else {
roundingMethod = NSRoundDown;
}
NSDecimalNumberHandler *handler = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:roundingMethod
scale:decimalPlaces
raiseOnExactness:NO
raiseOnOverflow:NO
raiseOnUnderflow:NO
raiseOnDivideByZero:NO];
これは期待どおりに機能しますが、丸めモードをポインター「roundingMethod」に割り当てると、次のコンパイラ警告が表示されます。
「NSUInteger」(別名「unassigned long」)から「NSUInteger *」(別名「unassigned long *」)に代入する整数からポインタへの変換に互換性がない' (別名「割り当てられていない整数」)
これが何を意味するのかよくわかりません。どんな助けでも大歓迎です。