美文网首页
#import、@class区别

#import、@class区别

作者: Joshua520 | 来源:发表于2020-12-07 16:57 被阅读0次

    一、#include
    1.include一般是c/c++使用

    include< file >编译程序会先到标准函数库中找文件

    include”file” 编译程序会先从当前目录中找文件

    1. include:为了防止重复引用可采用:

    ifndef ViewController_h

    define ViewController_h

    endif

    二、#import

    1.#import比起#include的好处就是不会引起交叉编译

    1. import方式会包含被引用类的所有信息,包括被引用类的变量和方法,有效率上的问题。

    2. import最大的问题在于,需要避免出现头文件递归引入的现象。(如:A引入B,B引入A,那么A、B的头文件会互相不停的拷贝)

    三、@class

    1. 如果你只是定义成员变量、属性用@class,如果需要创建类就需要用#import。

    2. import方式会包含被引用类的所有信息,包括被引用类的变量和方法,会有效率方面的问题。

    3. 如果是继承某个类的话,需要用#import

    总结:在非继承时,.h用@class引入,.m用#import引用类

    相关文章

      网友评论

          本文标题:#import、@class区别

          本文链接:https://www.haomeiwen.com/subject/hfqtgktx.html