这是我应用的简化结构
A.H
#import "B.h"
@interface A : NSObject {
B *b1;
}
B.h
@interface B : NSObject {
}
这很好,但现在我需要在B中创建一个A-s数组,所以这就是我所做的
A.H
#import "B.h"
@interface A : NSObject {
B *b1;
}
B.h
#import "A.h"
@interface B : NSObject {
NSMutableArray *aArray;
}
-(void) addA: (A*) aTemp{
[aArray addObject:aTemp];
}
-(NSMutableArray*) getArray{
return aArray;
}
令人惊讶的是我在导入A.h
时遇到错误为什么会这样?
有任何线索吗?
由于
答案 0 :(得分:0)
你不能像这样进行相互导入。但在这种情况下,你根本不需要进口。在A.h中添加
就足够了@class B;
在B.h你不需要任何进口。
答案 1 :(得分:0)
Objective-c不允许循环依赖,我认为这个线程是你问题的答案:Does Objective-C allow circular dependencies?