Хорошо, если вы что-то делаете с iphone или mac в какао, вы можете просто создать подкласс NSObject (базовый класс в target-c).
Вам нужны .h и .m, поэтому для вашего примера это будет что-то вроде:
(Обратите внимание, что я использовал slotId вместо id, потому что id является ключевым словом в target-c)
Slot.h
// Slot.h
@interface Slot : NSObject {
NSInteger slotId;
float xPos;
float yPos;
BOOL empty;
}
@property NSInteger slotId;
@property float xPos;
@property float yPos;
@property BOOL empty;
@end
// Slot.m
#import "Slot.h"
@implementation Slot
@synthesize slotId;
@synthesize xPos;
@synthesize yPos;
@synthesize empty;
@end
Это определяет простой объект Slot с 4 свойствами, доступ к которым можно получить с помощью точечной нотации, такой как:
s = [[Slot alloc] init];
s.empty = YES;
s.xPos = 1.0;
s.yPos = 1.0;
Существует множество вариантов, какие типы данных вы используете, как вы определяете свойства и т. Д., В зависимости от того, с какими данными вы имеете дело.
Если вы хотите добавить объект слота в массив, один простой пример:
// create an array and add a slot object
NSMutableArray *arr = [NSMutableArray array];
Slot *slot = [[Slot alloc] init];
[arr addObject:slot];
// set the slot to empty
[[arr objectAtIndex:0] setEmpty:YES];