圆形#import,我做错了吗?

时间:2017-04-19 08:17:14

标签: ios objective-c

我对Objective-C中的导入感到困惑,因此我想确定一些事情:

我有Ah和Am,Bh和Bm,我目前在 Am 中添加了#import "B.h",在 Bh​​ 中添加了#import "A.h",它正在运行,没有警告或错误,但这会产生任何问题吗?

我无法使用@class的原因是因为我在A.h中声明了一个协议和一个枚举,并使用它B.h,@class无法捕捉到

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

  

#import确保文件只被包含一次,这样你就不会有递归包含的问题。但是,最体面的   头文件保护自己无论如何

来自What is the difference between #import and #include in Objective-C? 如果您使用的是#import,那么在文件以递归方式相互添加的情况下,它并不重要。

答案 1 :(得分:-1)

你尝试过C路吗?

#ifndef MYCLASS
#define MYCLASS
#import "A.h"
#endif