@class与#import
据我理解,在ClassA需要包含ClassB头的事件中,应该使用前向类声明,而ClassB需要包含ClassA头,以避免任何循环包含。我也知道#import是一个简单的ifndef所以包含只发生一次。
#import
ifndef
我的询问是:什么时候使用?#import什么时候才能使用@class?有时如果我用@class声明中,我看到一个常见的编译器警告,如下所示:
@class
warning: receiver 'FooController' is a forward class and corresponding @interface may not exist.
很想了解这一点,而不是仅仅删除@class向前声明并抛出#import来压制编译器给我的警告。
慕妹3146593
繁星点点滴滴
相关分类