Objective-Cでのこれに対する標準的なアプローチNSArray(or NSMutableArray)
は、NSArray
(またはNSMutableArray
)のを作成することです。配列オブジェクトを作成した後で配列を操作できるようにしたい場合、コードは次のようになります。
NSMutableArray* cubeGrid = [NSMutableArray new]; // Note that this code assumes you are using ARC.
// add row 1
NSMutableArray* cubeRow1 = [NSMutableArray arrayWithObjects:cube1,cube2,cube3,nil]; // you will need to add cube 4 to 10 in the real code
[cubeGrid addObject:cubeRow1];
// add row 2
NSMutableArray* cubeRow2 = [NSMutableArray arrayWithObjects:cube11,cube12,cube13,nil]; // you will need to add cube 14 to 20 in the real code
[cubeGrid addObject:cubeRow2];
// and you will create the rest of the rows and add to the cubeGrid array
要素にアクセスするには、次のようにします。
for (id cubeRow in cubeGrid) {
if ([cubeRow isKindOfClass:[NSArray class]]) {
for (id cube in (NSArray*)cubeRow) {
if ([cube isKindOfClass:[Cube class]]) {
// Do things with cube
}
}
}
}
また、アクセスしようとしているメソッドがヘッダーファイルで宣言されているかどうかを再確認することもできます。