好的,所以我有下面的代码(Objective-C FYI),我想知道如果我想创建一个对象的NSMutableArray,我将如何去做?这有点像在C#中声明List<c_data> cData
。创建一个只包含给定类的对象的数组
@interface c_data : NSObject {
double value;
int label;
int ID;
}
@property double value;
@property int label;
@property int ID;
-(c_data*) init;
-(c_data*) initWithValue:(double)value;
@end
@implementation c_data
@synthesize value, label, ID;
-(c_data*) init {
return self;
}
-(c_data*) initWithValue:(double)val {
value = val;
return self;
}
@end
如果你看一下类feat_data
,我试图让cData
类c_data
的数组。我已经包括了我的尝试,但我不认为这是正确的,因为c_data
不是一个数组。有什么建议么?
@interface feat_data : NSObject {
NSMutableArray *nData;
NSMutableArray *cData;
char type;
}
@property(nonatomic, retain) NSMutableArray *nData;
@property(nonatomic, retain) NSMutableArray *cData;
@property char type;
-(feat_data*)init;
@end
@implementation feat_data
@synthesize nData, cData, type;
-(feat_data*)init {
nData = [[NSMutableArray alloc] init];
c_data *c_dataInstance = [[c_data alloc] init];
cData = [[NSMutableArray alloc] initWithArray:c_dataInstance];
return self;
}
@end
不是一个答案,而是一个评论:类名“c_data”在Objective-C约定之外是疯狂的。类名应该在CamelCase中以大写字母开头。 – Chuck 2009-07-13 18:46:27
注:与此有关的SO问题 - http://stackoverflow.com/questions/1120067/ – 2009-07-13 18:56:12