【问题标题】:Current way of importing in a mixed Objective-C / Swift project当前在混合 Objective-C / Swift 项目中的导入方式
【发布时间】:2018-03-13 10:36:24
【问题描述】:

我最近一直在寻找一些循环依赖,我试图找出最新的导入方式是什么。谷歌搜索并没有多大用处,因为这会在没有明确答案的情况下出现几代人的迭代。

我现在在 MyViewController.h 文件中的内容:

@class ForwardClass;
@protocol ForwardProtocol;
typedef NS_ENUM(NSUInteger, XYZCharacterType);

@interface MyViewController: UIViewController

@property (strong, nonatomic) ForwardClass *fw;

@property (nonatomic, strong) id<ForwardProtocol> fwProtocol;

@property XYZCharacterType charType;

@end

MyViewController.m 文件中:

@import MBProgressHUD;

#import "SomeManager.h"
#import "SomeOtherViewController.h"
#import "Model.h"

#import "MyViewController.h"

#import "MyProject-Swift.h"

@implementation MyViewController

@end

所以.h 文件不再导入任何内容,而只转发声明它需要处理的文件。

这是最新的做事方式吗?我应该注意这方面的任何限制吗?

【问题讨论】:

    标签: objective-c swift include


    【解决方案1】:

    您的.h 是最好和最现代的方式,您应该始终避免在.h 文件中使用任何#import

    根据我的经验,大多数人仍然更喜欢使用#import &lt;Cocoa/Cocoa.h&gt; 而不是@import Cocoa;

    如果您选择使用模块,#import 将自动执行@import,因此无需使用它。

    此外,在这个类中使用了哪些依赖项更清晰,它不会导入当前范围内您可能不需要的任何内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-10
      • 2018-07-04
      • 2018-09-17
      • 2015-09-14
      • 1970-01-01
      • 2020-11-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多