我有两个可可触摸类(objective-c)。并且两个#import
彼此的头。循环头导入,枚举无法识别
A类的头文件定义了一个枚举类,该类的B头试图使用。由于未识别类型,B类无法编译。
我认为这是一个循环依赖问题,但我认为@class
不会有太大的帮助,因为问题是与枚举。
你有什么建议?
我有两个可可触摸类(objective-c)。并且两个#import
彼此的头。循环头导入,枚举无法识别
A类的头文件定义了一个枚举类,该类的B头试图使用。由于未识别类型,B类无法编译。
我认为这是一个循环依赖问题,但我认为@class
不会有太大的帮助,因为问题是与枚举。
你有什么建议?
把枚举放在它自己的头文件中,并用@class在每个其他头文件中声明所需的类,所以A不需要导入B和B不需要导入A,但是会导入enum头文件。
在头文件中使用@class ClassName;
并在.m文件中使用导入。
仍然不会编译;该类型在B类中仍然未被识别。 –
Class A标题在Class B标题中使用了什么? – Daniel
现在,只是班级名称。但是(除非我的设计证明不可行),它最终将使用它的属性和方法。 但是,反过来不是真的,B类可以不使用除A类的枚举类型之外的任何东西。也许我可以将枚举移动到“Common.h”头部。 –
是的,enum的“Common.h”听起来像是一个很好的计划。 – Daniel