为什么Google会在实现(.m)文件中生成@class前向声明?

时间:2013-01-25 11:18:32

标签: ios objective-c

我一直在使用Google在Objective-C中提供的GDataXMLNode.m,我注意到他们在其实现(.m)文件中执行了@class转发声明。他们这样做:

@class NSArray, NSDictionary, NSError, NSString, NSURL;

这是为什么?这样做是否有任何真正的优化?

1 个答案:

答案 0 :(得分:2)

我不认为他们在编译中扮演任何角色,因为它们也存在于.h文件中,因此它们只是一个副本。此外,.h文件已经导入Foundation.h,因此这些前向声明只是多余的。

也许它们被用作GDataXMLNode与其他类的依赖关系文档的形式。