参照:http://d.hatena.ne.jp/dice-t/20101215/1292392076
×
classA.h
#import "classB.h"
@interface classA {
classB objB;
}
classB.h
#import "classA.h"
@interface classB {
classA objA;
}
→error: expected specifier-qualifier-list before 'ClassA'
とかのコンパイルエラーになる。
◯
classA.h
@class classB;
@interface classA {
classB objB;
}
classA.m
#import "classB.h"
@implementation classA
…
@end
classB.h
@class classA;
@interface classB {
classA objA;
}
classB.m
#import "classA.h"
@implementation classB
…
@end
C++といっしょだぬ。
まぁ循環参照が必要な時点でちょっと行けてない設計なわけだが。