【问题标题】:Having compilation error with #import#import 出现编译错误
【发布时间】:2011-12-07 04:32:47
【问题描述】:

我对以下关系有一些错误

我有 2 个班级,A 级和 B 级 在 A 类标头中,它将 #import "B.h" 在 B 类标头中,它将 #import "A.h"

我在编译过程中出错。有谁知道我该如何解决这个问题?

错误看起来像这样: 'GameUILayer' 之前的预期说明符限定符列表

【问题讨论】:

标签: objective-c


【解决方案1】:

不要在 .h 文件中导入标头,而是使用前向声明。所以不是

#import "ClassA.h"

你使用:

@class ClassA

然后在 .m 文件中使用 import 语句。

请参阅我的earlier answer 以获取文档链接。

【讨论】:

    【解决方案2】:

    您正在创建循环依赖项。一个类应该导入另一个类。他们不能互相导入。如果您正在制作这样的交互类,则应该有一个依赖层次结构。 B 依赖于 A,A 至少依赖于根类 NSObject。如果你让两个类相互依赖,编译器要么对你大喊大叫,要么试图编译它并最终在圈子里跑来跑去。大多数编译器旨在对您大喊大叫。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 2018-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多