1.#include一般用在包含C/C++头文件,但是容易引起交叉编译,头文件可能会造成相互引用. 比如:a 包含 b,b 包含 a。
解决办法:
<1>在头文件开头写#pragram once
<2>将代码写到宏定义中
#ifndef __XXX__
#define __XXX__
代码……
#endif
2.#import用来包含oc相关头文件,相当于#include中<1>,<2>中情况
因为这样不会引起交叉编译问题,所以在iOS开发中可以相互包含头文件(但是不推荐)
能在.m文件包含就不要写到.h文件中。
3.@class用来前置声明类,告诉编译器有这个类,具体类中都有哪些方法、属性在运行时才能知道.
这样可以不用导入头文件,减少编译时间,比较推荐改方法。