@3の代わりにできることはわかっています[NSNumber numberWithInt:3]
が、のリテラルは[NSNumber numberWithUnsignedInteger:3]何ですか?
1393 次
3 に答える
8
@3Uorを使用できます@3UL(または通常の整数サフィックスを使用して型を変更します。たとえば@3ULLfor unsigned long long)。
NSNumber リテラルの詳細については、このページを参照してください。
于 2012-09-13T01:15:02.973 に答える
5
正しいリテラルを覚えていない場合でも、型キャストは機能します。
NSNumber* number = @((NSUInteger)3);
于 2012-09-13T01:23:56.287 に答える
2
@3ULは、NSNumberと明示的に同じ幅/符号の を提供しNSUIntegerます。
しかし、なぜこれが必要なのか自問してみてください。はC/Objective-C 1のすべての3数値型で正確に表現できるため、同じように動作するオブジェクトが得られます。使用される定数の型は異なりますが、取得したオブジェクトはまったく同じ方法で使用でき、同じ一連のメソッドでボックス化解除できます。@3
1わかりました、わかりました。_Boolやなどの 1 ビットのみを表す型を除きますint : 1。
于 2012-09-13T01:29:55.250 に答える