NSFetchedResultsController - 新语法?

时间:2010-11-18 21:35:09

标签: iphone objective-c core-data nsfetchedresultscontroller

我今天开始阅读有关NSFetchedResultsController的内容,但是我遇到了一些令人困惑的语法,有人可以描述以下两行的含义吗?特别是id <something>

id <NSFetchedResultsSectionInfo> sectionInfo = [[fetchedResultsController sections] objectAtIndex:section];

NSManagedObjectContext *context = <#Managed object context#>;

另外,请确认我的理解,NSFetchedResultsController只是一种NSMutableArray,但具有专门用于控制Core Data的附加功能(委托消息)?

1 个答案:

答案 0 :(得分:1)

id<PROTO> foo声明一个变量foo,其类型是“指向符合协议PROTO的对象的指针”。这意味着只能将PROTO协议中的邮件发送到foo

<#Managed Object Context#>无效的Objective-C语法。它只是说,“坚持使用代码来获取对MOC的引用。”

NSFetchedResultsControllerNSMutableArray无关。他们唯一的共同点是两者都提供对有序集合的访问。 NSFetchedResultsController位于您和托管对象上下文之间。其内容由上下文中的内容和创建获取的结果控制器时提供的获取请求确定。它可以调解对MOC的访问,并尽可能使用缓存数据。其预期用途是将Core Data中的数据转换为UITableView

的简便方法