iOS,在循环中创建业务对象,并将其添加到数组中

iOS,在循环中创建业务对象,并将其添加到数组中,ios,Ios,我是一个做iOS的.NET和java程序员,我想我应该提到这一点(也许我偏向于业务对象、类)。。。 无论如何 我有一些对象作为JSON流,我想把它们都输入到一个数组中,我创建了一个简单的类来表示这个对象并初始化它的属性 BizObject.h @interface BizObject : NSObject @property (readwrite, copy) NSString* back; @property (readwrite, copy) NSString* front

我是一个做iOS的.NET和java程序员,我想我应该提到这一点(也许我偏向于业务对象、类)。。。 无论如何

我有一些对象作为JSON流,我想把它们都输入到一个数组中,我创建了一个简单的类来表示这个对象并初始化它的属性

BizObject.h

   @interface BizObject : NSObject
   @property (readwrite, copy) NSString* back;
   @property (readwrite, copy) NSString* front;
   @end
BizObject.m

 #import "BizObject.h"
 @implementation BizObject
 @synthesize front, back;
 //No init method, don't know if I need one !!
 @end
现在,当我得到JSON条目时,我会这样做

  NSMutableArray *tempArray = [NSJSONSerialization
  JSONObjectWithData:JSONData
  options:NSJSONReadingAllowFragments
  error:&error];
  if (!tempArray) {
     NSLog(@"Error parsing JSON: %@", error);
  } else {

  for(NSDictionary *tempBizObject in tempArray) {
  BizObject * newBizObject = [[BizObject alloc] init];
     [newBizObject setBack: [tempBizObject valueForKey:@"back"]];
     [newBizObject setFront:[tempBizObject valueForKey:@"front"]];
     [bizObjectsArray addObject:newBizObject];
  }
}
for(BizObject *bizObject in bizObjectsArray) {
   NSLog(@"back: %@", bizObject.back);
   NSLog(@"fron: %@", bizObject.front);
}
我有一些问题:

1:这种设置有什么问题吗

2:我得到了这个错误

  malloc: *** error for object 0x165060: pointer being freed was not allocated
3:仅仅创建一个对象数组,它的所有属性都只是字符串,这是不是太过分了


谢谢大家的帮助。

您正在释放未分配的对象。这意味着在代码中的某个地方,您正在释放已经释放的对象或释放未创建的对象,请对此进行检查。您的上述代码不包含该代码段

请使用

@interface BizObject : NSObject
@property (nonatomic, retain) NSString* back;
@property (nonatomic, retain) NSString* front;
@end

显示的代码没有问题,崩溃是另一个对象。启用僵尸对象以查看崩溃的更多细节。

但我不释放任何对象?这都是弧。