Nesne-C nesnelerini yalnızca NSMutableArray
'da saklayabilirsiniz. Yapabileceğiniz
Bir rota standart C dizi kullanmaktır:
unsigned int array_length = ...;
Node** nodes = malloc(sizeof(Node *) * array_length);
diğer bir güzergahı Objective-C nesnesi yapısını sarılmasıdır: Sonra
@interface NodeWrapper : NSObject {
@public
Node *node;
}
- (id) initWithNode:(Node *) n;
@end
@implementation NodeWrapper
- (id) initWithNode:(Node *) n {
self = [super init];
if(self) {
node = n;
}
return self;
}
- (void) dealloc {
free(node);
[super dealloc];
}
@end
, sen ediyorum böyle senin NSMutableArray
için NodeWrapper
nesneleri ekleyin:
Node *n = (Node *) malloc(sizeof(Node));
n->AE = @"blah";
NodeWrapper *nw = [[NodeWrapper alloc] initWithNode:n];
[myArray addObject:nw];
[nw release];
ret etmek Rieve NodeWrapper
dan Node
, sadece bu yapardım:
Node *n = nw->node;
veya
Node n = *(nw->node);
+ 1 hepinize. –