objective-c - Xcode 生成 NSManagedObject 子类错误

标签 objective-c ios core-data xcode4

我生成的模型对象存在大量错误:

练习集.h

1  @class Exercise;
2 
3  @interface ExerciseSet : NSManagedObject
4 
5  @property (nonatomic, retain) NSNumber * order;
6  @property (nonatomic, retain) NSNumber * reps;
7  @property (nonatomic, retain) NSNumber * weight;
8  @property (nonatomic, retain) Exercise *belongsTo;
9
10 @end
  • 第 1 行非法接口(interface)限定符
  • 第 3 行的预期标识符或“(”
  • 第 8 行未知类型名称“Exercise”
  • 第 8 行具有“retain(或 Strong)”属性的属性必须是对象类型
  • 针对未调用 @synthesize@dynamic(当然会调用)的所有属性发出警告

练习.h

1  @class ExerciseName, ExerciseSet, Workout, WorkoutMethod;
2
3  @interface Exercise : NSManagedObject
4
5  @property (nonatomic, retain) NSString * notes;
6  @property (nonatomic, retain) NSDecimalNumber * restBetweenSets;
7  @property (nonatomic, retain) NSNumber * rmMethod;
8  @property (nonatomic, retain) NSDecimalNumber * rmResult;
9  @property (nonatomic, retain) Workout *belongsTo;
10 @property (nonatomic, retain) NSSet *hasSet;
11 @property (nonatomic, retain) WorkoutMethod *isDoneWith;
12 @property (nonatomic, retain) ExerciseName *takesNameFrom;
13 @end
14 
15 @interface Exercise (CoreDataGeneratedAccessors)
16 
17 - (void)addHasSetObject:(ExerciseSet *)value;
18 - (void)removeHasSetObject:(ExerciseSet *)value;
19 - (void)addHasSet:(NSSet *)values;
20 - (void)removeHasSet:(NSSet *)values;
21 @end
  • 第 1 行非法接口(interface)限定符
  • 第 3 行缺少 @end
  • 第 9 行存在未知类型名称“Workout”
  • 等等

其他前向声明的接口(interface)都可以,没有问题或错误。

什么可能导致此行为?

最佳答案

我也遇到了同样的问题,结果发现我的一个 .h 文件丢失了@end 这也是重新生成 NSManagedObjects 有效的原因。

关于objective-c - Xcode 生成 NSManagedObject 子类错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9579780/

相关文章:

objective-c - cocoa touch 问题。 [NSMutableArray array] 应该保留吗?

c# - 学习 Objective C 时需要了解的关键事项?

ios - Swift 中的整数溢出

swift - 从最后一项获取核心数据 ManageObject 排序

objective-c - 无法分配 self.delegate 它会产生无法识别的选择器发送

ios - 在汽车显示中显示播放列表和其他项目

ios - 在 Alamofire 请求参数中传递 CSRF token

ios - ios 通话后恢复在后台运行的应用程序

objective-c - 如何使大纲 View 中的文本单元格显示父行有多少个子行?

objective-c - 一种获取核心数据对象属性最大值的简单、可靠的方法?