Ios 使用ARC生成Apple Core数据教程时出错
我一直在努力解决核心数据问题,所以我决定做这个。我正处于教程中要求我构建到目前为止我已经完成的项目的位置。所以我现在在教程中。在构建项目时,我遇到以下错误:Ios 使用ARC生成Apple Core数据教程时出错,ios,xcode,core-data,Ios,Xcode,Core Data,我一直在努力解决核心数据问题,所以我决定做这个。我正处于教程中要求我构建到目前为止我已经完成的项目的位置。所以我现在在教程中。在构建项目时,我遇到以下错误: 属性“managedObjectContext”(“NSManagedObjectContext*”)的类型与ivar“managedObjectContext”(“MSManagedObject*”的类型不匹配。 RootViewController.m Ivar在此声明 这就是我在错误窗口中得到的结果 这是我的文件的样子 RootVie
属性“managedObjectContext”(“NSManagedObjectContext*”)的类型与ivar“managedObjectContext”(“MSManagedObject*”的类型不匹配。
RootViewController.m
Ivar在此声明
这就是我在错误窗口中得到的结果
这是我的文件的样子
RootViewController.h
RootViewController.m
AppDelegate.h
AppDelegate.m您的ivar声明不正确。在RootViewController.h中
NSManagedObject *managedObjectContext;
正如错误所抱怨的那样
NSManagedObjectContext *managedObjectContext;
事实上,在现代运行时中,很长一段时间内没有必要(通常是不明智的)为
@synthesis
'd属性显式声明支持IVAR。因此,您可以完全删除ivar行,让编译器为您生成一个ivar。错误消息已经解释了它。
您有一个NSManagedObject类的ivar ManagedObject上下文(这是您的错误)
编译器无法合成属性managedObjectContext,因为您有一个同名但不同类的ivar
重命名ivar并更改合成行:
@synthesize managedObjectContext = _managedObjectContext;
谢谢你帮我指了指。当我到家时,我会尝试一下你说的话,然后将问题标记为已回答。感谢您的书面回复。@Chris我很高兴,如果您遇到任何问题,请告诉我。(这听起来像是相当旧的示例代码,所以如果还有其他问题等待解决,我也不会感到惊讶。)