黑马程序员技术交流社区
标题:
include/import/class的区别
[打印本页]
作者:
闫跃文
时间:
2014-9-27 19:02
标题:
include/import/class的区别
求解释????
:handshake请详细一点啊
作者:
小叶子
时间:
2014-9-27 19:37
include是包含头文件,也就是.h文件,是直接将包含的.h文件中得全部代码拷贝过来
import是导入,导入一个外部文件啥的,
class是申明一个虚类,举个例子:在.h头文件中一般class这么用,如果不这么用得话,正确做法就该include"Person.h"
<p style="font-size: 18px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);"><span style="color: #78492a">#import </span><Foundation/Foundation.h></p>
复制代码
在.m中
#import "Person.h"
@implementation Baby
复制代码
如果不用class,在.h中你要include"Person.h"头文件一次,在.m实现时又要包含一次,相当于拷贝了2次Person头文件进去,浪费了~~
作者:
sk0806
时间:
2014-9-27 19:48
正解啊,咋感觉这么像C里面的东东
作者:
coyote
时间:
2014-9-27 22:17
首先,引入C或C++文件使用#include,但是使用#import可以避免引起交叉编译。@class和#import的区别在于,@class只是单纯告诉当前文件说,我现在后面这个东西是个类,但是这个类具体是什么样的,我没有告诉你。但是#import相当于把一个类的.h文件都引过来的。问题在于,我们什么时候用@class什么时候用#import呢?当你不需要告诉当前文件一个类的具体实现的时候,最好用@class,因为如果说在一个比较大的项目里面,许多类中都要导入很多的头文件,很容易造成循环引用。但是用@class的话,就会很好的避免这个问题!
作者:
闫跃文
时间:
2014-9-28 00:38
coyote 发表于 2014-9-27 22:17
首先,引入C或C++文件使用#include,但是使用#import可以避免引起交叉编译。@class和#import的区别在于,@c ...
好的,谢谢你啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2