美文网首页
85_iOS干货44_#import引号和尖括号的区别 + xc

85_iOS干货44_#import引号和尖括号的区别 + xc

作者: adalillian | 来源:发表于2020-06-02 11:21 被阅读0次

    https://blog.csdn.net/a_horse/article/details/84069640

    85_iOS干货44_#import引号和尖括号的区别 + xcode中黄色和蓝色文件夹的区别

    一,#import引号和尖括号的区别

    1,#include命令

    #include是C/C++的预处理指令(Preprocessor Directive),主要作用是把头文件引入到任意源文件中,在预处理阶段,被包含的文件在源文件的指令地点进行整体替换

    2,尖括号:

    #include<path-spec> // Angle bracket form

    查找路径:从系统配置的头文件路径去找

    系统的头文件目录:有frame search path和Header search path去找,配置如下

    如果,尖括号内仍然报错,请设置编译器为:legacy build system

    3,双引号:

    #include"path-spec" // Quoted form

    查找顺序:从当前项目路径开始寻找文件,如果找不到,则到系统(项目)中配置的头文件路径去找

    4,总结:

    如果是自定义的头文件,必须使用双引号,否则会找不到头文件,出现编译错误;

    如果是系统文件或者第三方SDK,可以用双引号,也可以用尖括号,但使用双引号会降低搜索效率,而且存在一定风险,当自定义头文件和系统头文件重名时,会把自定义文件作为搜索结果,比如我们自己写一个stdio.h,使用#include"stdio.h",不会得到系统库的调用

    所以系统文件或者第三方SDK(直接frame引入或者pod引入的配置路径不同),但尽量用尖括号import

    二,xcode中黄色和蓝色文件夹的区别

    1,黄色文件夹,就是group

    逻辑文件夹,工程中文件夹的形式

    本地目录中,有可能实际没有这个文件夹,里边文件的层级是乱的

    参与项目编译

    2,蓝色文件夹,就是folder

    本地目录中实际的文件夹

    不参与编译

    多为资源文件目录,例如图片文件等

    3,文件夹的引用

    目录中新建

    newGroup:新建逻辑文件夹group,同时也在本地目录中新建实际文件夹folder

    newGroupWithoutFolder:只是新建逻辑文件夹group,不创建folder

    外部拖入

    引用蓝色文件夹:外部实际

    创建黄色文件夹:

    版权声明:本文为博主原创文章,转载请附上博文链接!

    相关文章

      网友评论

          本文标题:85_iOS干货44_#import引号和尖括号的区别 + xc

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