4

我发现了一条奇怪的线,例如:

id *_optimizationHints; <- in NSManagedObjectModel.h

id* _cd_snapshots; <- in NSManagedObject.h

id** _kvcPropertyAccessors; <- in NSEntityDescription

id* _debuggingRecords; <- in NSManagedObjectContext.h id *_cachedObsInfoByEntity; <- in NSManagedObjectContext.h

当我尝试使用ARC选项编译项目时,我看到如下错误:Pointer to non-const type 'id' with no explicit Ownership

怎么了?当我阅读类似的问题时,我需要替换id *->id

但这是主要的 CoreDate.Framework!

我无法理解这一点。

谁能解释这个“笑话”?

4

2 回答 2

4

我今天早上遇到了类似的问题。似乎问题是由于以某种方式内置了核心数据。当我们导入CD框架时,我必须去Building Phases添加依赖框架,而不是直接从Finder中拖放。希望这会有所帮助

于 2012-08-13T08:22:36.287 回答
4

我今天遇到了同样的问题,同时将我想要拆分的现有项目转换为静态库和公共代码部分。我按照这里的说明进行操作:https ://github.com/jverkoey/iOS-Framework

确实,我通过从我之前的项目中拖放来添加 CoreData.framework。但是,我删除了它并像您指出的那样重新添加了它(多次),但我仍然收到您报告的相同错误。

编辑:这是我的问题:我删除了框架并从 Xcode 中读取它们。我的问题是我的项目目录中实际上有一个“CoreData”子目录没有被删除。

解决方案:在 Finder 中将其删除,并将其重新添加到“Link Binary with Libraries”后,问题就消失了

于 2013-04-26T16:13:33.923 回答