本文轉自李雲的部落格: http://blog.csdn.net/hzliyun/article/details/9340843
。
假設存在下圖所示的項目目錄結構:

foo.c
#include "bar.h"
bar.c
#include "foo.h"
然而,當項目規模很大存在很多的目錄時,這種方式将顯著地降低項目的編譯速度。因為“-I”選項使用得越多,意味着編譯每一個C檔案時所需進行頭檔案搜尋的目錄也越多。
為了避免這一問題,我們可以将代碼改為:
foo.c
#include "bar/bar.h"
bar.c
#include "foo/foo.h"
如此一來,整個項目隻需一個“-I src”選項就行了。
促使我意識到這一問題,是因為前段時間看到Blink開源項目的一封郵件,其中談到采用上面的第二種方法後,在Windows上編譯Blink的速度提高了40%。