-3

我无法使用#import 和@class

让我们试着用一个简单的经典例子来说明问题:员工案例。

我有一个班级员工,一个班级经理和一个班级部门。

员工是经理的超类,还包含一个对象部门(那么我应该在哪里导入部门?在employee.h 或employee.m 中,我应该使用#import 还是@class?)

Department 包含一组员工,因此应该导入类employee.h(我应该使用导入还是类?在哪里?)

i know theres a better way to solve this problem, using databases or so
but that's not my point, i want to understand when and where to use
#import and where and when use @class

我试图阅读类似的帖子,但我不明白它是如何工作的......

4

1 回答 1

3

Using@class只是对编译器的一个提示,即您打算使用该类,并且当您仅在某种声明中引用该类时可以使用它。它不会导入头文件,因此编译速度会快一点。避免圆形夹杂物也很有用。

Using#import将在编译期间实际导入头文件,当您依赖相关类的行为时需要使用。这就是编译器知道哪些属性、方法等可以安全使用的方式。

于 2013-07-31T19:52:43.067 回答