#include "header.h"
用引号,代表编译程序会优先在程序的「本地目录」搜索这个文件,找不到再搜索「系统目录」。
#include <header.h>
用尖括号,代表编译程序只会在「系统目录」(系统环境变量和编译本身设置的默认搜索目录)搜索这个文件。
总的来说,一般是用双引号来引用自己编写的文件,而用尖括号引用系统标准的文件。
有时候我们导入头文件后编译保存找不到'xxx.h'文件,可能是因为加入头文件路径没有配置好。解决方案: 在 Target ->Build Setting ->Search Paths ->User Header Search Paths里面添加 ${SRCROOT} 即可,如下图所示:
开发的小伙伴是不是最近遇到这样的问题,新建的项目导入的第三方库,如果使用双引号import "",系统不提示,而使用了尖括号import<>导入则系统会提示。我们会感到好奇,因为尖括号<>导入的,我们一般是系统的文件,双引号""导入的是我们这些第三方。那为什么现在新建的项目导入第三方也要用<>呢。
相关苹果的说明,请点击这里
Xcode10以后,苹果采用了新的构建模式,把build System的默认改成了 New Build System,之前的改为了Legacy Build System。
所以,如果你是Xcode10之后创建的项目。那么导入第三方头文件就得用尖括号,如果想用双引号导入,那么久修改 build System 为 Legacy Build System。修改方法如下
2:一般的创建项目,直接导入第三方
如果你用New Build System ,那么导入系统提示
你需要删除/,自己动手加上.h
如果你用Legacy Build System ,那么导入系统提示
这样你就知道该怎么选择了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)