程式設計好習慣 減少搜尋標頭檔案的目錄數

2021-09-03 05:38:04 字數 589 閱讀 4134

假設存在下圖所示的專案目錄結構。

如果存在如下包含標頭檔案的**,則大多的專案中需要通過「-i foo」和「-i bar」指明兩個搜尋標頭檔案的目錄。

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%。

程式設計好習慣 減少搜尋標頭檔案的目錄數

假設存在下圖所示的專案目錄結構。如果存在如下包含標頭檔案的 則大多的專案中需要通過 i foo 和 i bar 指明兩個搜尋標頭檔案的目錄。1 2 foo.c include bar.h 1 2 bar.c include foo.h 然而,當專案規模很大存在很多的目錄時,這種方式將顯著地降低專案的...

程式設計好習慣 減少搜尋標頭檔案的目錄數

假設存在下圖所示的專案目錄結構。如果存在如下包含標頭檔案的 則大多的專案中需要通過 ifoo 和 ibar 指明兩個搜尋標頭檔案的目錄。1 2 foo.c include bar.h 1 2 bar.c include foo.h 然而,當專案規模很大存在很多的目錄時,這種方式將顯著地降低專案的編譯...

程式設計好習慣 減少搜尋標頭檔案的目錄數

假設存在下圖所示的專案目錄結構。如果存在如下包含標頭檔案的 則大多的專案中需要通過 i foo 和 i bar 指明兩個搜尋標頭檔案的目錄。foo.c include bar.h bar.c include foo.h 然而,當專案規模很大存在很多的目錄時,這種方式將顯著地降低專案的編譯速度。因為 ...