私は現在持っています:
transformations = @[@[1, 1], @[1, -1], @[-1, 1], @[-1, -1]];
これを与えるべきタイプは何ですか?(NSArray *)?
私は現在持っています:
transformations = @[@[1, 1], @[1, -1], @[-1, 1], @[-1, -1]];
これを与えるべきタイプは何ですか?(NSArray *)?
のNSArray
ですNSArrays
。スカラーを に変換する必要がありますがNSNumbers
。:)
transformations = @[@[@1, @1], @[@1, @-1], @[@-1, @1], @[@-1, @-1]];
Clang ドキュメントから:
// 整数リテラル。
NSNumber *fortyTwo = @42; // [NSNumber numberWithInt:42] と同等
NSNumber *fortyTwoUnsigned = @42U; // [NSNumber numberWithUnsignedInt:42U] と同等
NSNumber *fortyTwoLong = @42L; // [NSNumber numberWithLong:42L] と同等
NSNumber *fortyTwoLongLong = @42LL; // [NSNumber numberWithLongLong:42LL] と同等
配列にはプリミティブ型ではなくオブジェクトが必要なので、配列にNSNumber
s を設定する必要があります。たとえば、 を使用し@(1)
、 を使用して値を取得しますtransformations[x][y].intValue
。
NSArray *transformations = @[@[@1, @1], @[@1, @(-1)], @[@(-1), @1], @[@(-1), @(-1)]];
int リテラルを NSNumber オブジェクトにラップできます。
NSNumber *intNumber = [NSNumber numberWithInt:-1];
等
次のように記述して、NSNumber のクイック構文を使用することもできます。
@(-1)
NSArray ステートメント内。