我在苹果网站上看到了一些像这样的代码
id <NSFetchedResultsSectionInfo> sectionInfo = ...
这与以下情况有何不同?
NSFetchedResultsSectionInfo *sectionInfo = ...
我对NSFetchedResultsSectionInfo本身并不感兴趣,而是对它的声明方式感兴趣。
非常感谢! 特里斯坦
答案 0 :(得分:5)
NSFetchedResultsSectionInfo
是一种协议。 id是一种声明通用对象的方式,id <NSFetchedResultsSectionInfo>
声明了一个必须遵守NSFetchedResultsSectionInfo
协议的通用对象。
答案 1 :(得分:3)
该语法用于指示被引用的对象符合特定协议。有关Objective-C的这一方面,请参阅Apple's documentation,特别是“遵守协议”一节及以下内容。