我不知道这是 XCode 中的缺陷还是我在 Obj-C 方面缺乏经验,但我遇到了一个问题,试图在一个包含指向另一个的类中创建属性,而另一个类有一个属性包含指向第一类的指针。
我知道上面可能不清楚,但希望这个例子能说明我的意思:
//Class Journal.h
@property (strong) JournalVC *JVC
//Class JournalVC.h
//IVar
Journal *_Journal
在这两个类中,我都导入了另一个类的标题,因此 XCode 知道另一个类。如果我不导入标题,它会抱怨它不知道属性/IVar 应该是什么类型,并且想用它所在的类替换它(JournalVC 作为 Journal,反之亦然)。当两个类都具有另一个类的标头的 import 语句时,也会发生这种情况。
如果只有一个人知道另一个人,这不会发生。当 JournalVC 被 UIVIewController(它的父类)替换并且没有 import 语句时,它可以工作,而 IVar 保持不变并且该标头导入另一个。
我认为问题在于两个标头都在相互导入,这会导致与 XCode 混淆。有没有其他方法可以让一个头文件知道属性的类而没有这个问题?