分析
在Xcode->Target->BuildSettings中, 有两个设置一个是User Header Search Paths
, 一个是 Header Search Paths
. 其实还有一个废弃的Always Search User Paths
.
Header Search Paths
就是我们平时使用的, 设置头文件搜索路径的方法. 可以通过配置Header Search Paths
来引入头文件, 从而可以使用该类.
区别
Header Search Paths
和 User Header Search Paths
是具有同样功能的, 区别在于 import
或者 include
头文件时, Header Search Paths
会多一种方式.
当import
时, 有两种方式:
#import <SomeClass.h>
#import "SomeClass.h"
若在Header Search Paths
中设置SomeClass的路径后, 上面两种方式都可以使用. 但在User Header Search Paths
中设置后, #import <SomeClass.h>
会编译报错.
根本区别在于, 前者生成类似“-I path/to/header”的编译选项,后者生成类似“-iquote path/to/header”.
扩展
其实还有另一个很相似的设置Always Search User Paths
,
如果出现上面这样的错误, 这时把Always Search User Paths
设置成Yes
,强制也import<>
也在User Header Search Paths搜索。 但是现在这个设置已经废弃了, 也不必过多探究了.