美文网首页
include & import & class

include & import & class

作者: 蓝苹果不是烂苹果 | 来源:发表于2016-03-31 20:47 被阅读29次

    #include

    • include <>:用于引入系统自带的头文件,编译器会在系统文件目录下查找该文件
    • include "":用于引入用户自定义头文件,编译器会在用户目录下查找,然后在安装目录下查找,最后在系统文件中查找

    缺点:重复引用


    例:四个头文件:a.h b.h c.h d.h,如果b c 都引入了a, d引入了b, c, 则编译提示对于a 重复引用错误

    解决方法:

    #ifndef _CLASSC_H
        #define _CLASSC_H
        #include "ClassC"
    #endif
    

    #import

    • import <>:用于引入系统框架
    • import "":用于引入自己创建的头文件
      优点:不会出现重复引用错误

    @class

    • 用于声明一个类,告诉编译器他后面是一个类,但是对于类的具体实现不需要知道,可以用来创建该类的实例变量
    • 一般用于h文件中,在m文件中任然需要import引入文件

    总结

    • include与import在引用一个类的时候会包含这个类的所有信息包括变量方法等,但是这样做会对编译效率造成影响
    • include与import会出现交叉引用的问题
    • 使用@class可以提高编译效率,但是如果需要访问指定类的成员变量或方法,还是需要用import

    相关文章

      网友评论

          本文标题:include & import & class

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