我已经搜索了但是我没有得到解决方案。我有一个继承自NSObject的类。它有以下导入:
#import <Foundation/Foundation.h>
#import "Constants.h"
#import "CommonProtocols.h"
#import "SomeClass.h"
@interface SomeComtroller : NSObject
比我有SomeClass。
#import "SomeController.h"
@interface SomeClass : NSObject
{
SomeController *myController; // ERROR!
}
@end
但是,我无法在SomeClass中定义SomeController。它给了我错误,我真的想在SomeClass中拥有SomeController的属性,并且在控制器中有someClass的属性。
答案 0 :(得分:2)
你有一个循环依赖 - SomeClass.h导入SomeController.h,导入SomeClass.h,导入...
解决方案是将导入移动到实现文件中,然后使用@class
指令(例如SomeClass.h中的@class SomeController;
)向前声明正在使用的其他类。