黑马程序员技术交流社区

标题: include, import, @clsss的区别 [打印本页]

作者: godlike    时间: 2014-5-15 15:55
标题: include, import, @clsss的区别
本帖最后由 godlike 于 2014-5-16 20:56 编辑

c语言的时候用include, oc的时候用import, 后来mj老师又说用@clsss;这三个有什么本质的区别吗?

作者: 兰闻天    时间: 2014-5-15 16:21
1、#include做的事情#import都能做,而且#import可以防止重复拷贝文件;
2、#import和#include都是把包含的文件全部拷贝到调用的位置,也就是里面的属性和方法都知道的,@class只是告诉编译器这是一个类,至于具体类里面的属性和方法都不需要知道,等@implementation里需要用到的时候,再去查看类的信息
3、如果有很多的类都用#import去调用一个文件,如果这个文件被修改,那所有引用这个文件的类都会重新编译一次,@class就不会有这种问题,所有@class比#import性能要好
4、如何@implementation中需要引用的类的属性和方法,@class在@implementation中需要用#import方式引入被引用类。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2