Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

內部鏈結 (Internal Linkage)

.cc 檔中的定義不需要被外部檔案參考時,請透過將其放入無名名稱空間或宣告為 static 來使其具有內部鏈結,但不要在 .h 檔內使用任何這種結構。

定義

所有的宣告都可以透過放入無名名稱空間來使其具有內部鏈結。 函數與變數也可以透過宣告為 static 來實現內部鏈結。 這表示所宣告的內容無法被其他檔案存取。 如果其他檔案中宣告了同樣名稱的東西,那麼這兩者會被視為獨立的個體。

決定

我們鼓勵在 .cc 檔中對不需要外部引用的程式碼使用內部鏈結,但不要在 .h 檔中使用。

無名名稱空間的格式與具名名稱空間相同。 對於這種名稱空間的結尾註解,只要在名稱的部分留白即可:

namespace {
...
} // namespace