這邊blog 簡單介紹一下 Header Search Paths.
根據蘋果文檔(https://developer.apple.com/library/mac/documentation/developertools/Conceptual/XcodeBuildSystem/300-Build_Settings/bs_build_settings.html#//apple_ref/doc/uid/TP40002691-SW5 ),XCode用戶可以 通過Header Search Paths 來配置環境變量。但這裏涉及到一個另外一個參數 User Header Search Paths, 這兩者到底有什麼區別呢?
首先明確一點,Header Search Paths 顧名思義就是用來存放 Project 中頭文件的搜索根源,沒有被add到項目裏的頭文件,可以通過配置Header Search Paths 來引入頭文件,這樣的好處可以不讓project 包含的文件太多,便於管理。
淺顯一點的區別是,編碼時候通過 #include 引入頭文件的方式有兩種 <> 和 ""。<> 是隻從 Header Search Paths 中搜索, 而 "" 則能從 Header Search Paths 和 User Header Search Paths 中搜索。換言之 ,假如你把 路徑加到 User Header Search Paths 中,那麼 你用 #include <file.h> 的方式去引入對應的頭文件,就會報錯。 如果加到 Header Search Paths, 就沒有問題了。
具體一點的區別是,<> 是從系統目錄空間 (對應 Header Search Paths)中搜索文件, "" 是從用戶目錄空間(對應 User Header Search Paths)中搜索文件。如果你把路徑加到 User Header Search Paths 中,而 <> 無法從系統目錄空間中找到新加的路徑,從而報錯。