【发布时间】:2009-07-28 00:23:49
【问题描述】:
我正在使用 Coredata 并且有一个具有以下 toMany 关系的数据模型:
Rooms.isUsedBy -> 类很多类都使用一个 Room
Class.hasStudents -> 一个班级中有很多学生的学生
给定房间,我想获取所有使用该房间的学生。 这是简化的代码:
-(void) studentsinRoom:(Room*)aRoom {
NSSet* roomStudents = [[NSSet alloc]init];
for (SchoolClass* aClass in aRoom.isUsedBy) {
roomStudents = [roomStudents setByAddingObjectsFromSet:aClass.hasStudents];
}
[roomStudents release];
}
roomStudents 计算正确。
但是,当退出该方法时,我收到“EXC_BAD_ACCESS”错误。
我正在 iPhone 模拟器中调试它。
我很确定我在做/没有做正确的内存管理。 我确实在“malloc_error_break”上设置了一个中断并且它没有被击中。
【问题讨论】:
-
roomStudenta 是 NSManagedObject 吗?
-
不要介意代码块令人困惑尝试使用插入代码块功能
标签: iphone cocoa xcode core-data