名稱空間名稱

名稱空間全部使用小寫。 最頂層的名稱空間應使用基於專案名稱的名字。 避免巢狀名稱空間以及與知名頂層名稱空間的命名碰撞。

頂層的命名空間應通常使用專案名稱或者開發該程式的團隊名稱。 該名稱空間中的程式碼應該要放在與其名稱空間的命名相符的資料夾中 (或是子資料夾中)。

注意針對縮寫名稱的規則也如同變數一樣適用於名稱空間。 名稱空間中的程式碼很少會需要提及名稱空間的名稱,所以通常沒有使用縮寫的必要。

避免使用名稱與知名頂層名稱空間衝突的巢狀名稱空間。 名稱空間的命名衝突可能因為命名查詢規則造成意外的建置錯誤。 特別是不要建立任何命名為 std 的巢狀名稱空間。 優先使用獨特的專案 ID (websearch::indexwebsearch::index_util),而不是容易發生衝突的名稱,像是 websearch::util

對於 internal 名稱空間,請注意將其他程式碼加入同樣的 internal 名稱空間中會導致衝突 (團隊內部的輔助函式 (Helper Functions) 傾向於且可能導致衝突)。 在這種情況下,使用檔名來建立一個獨特的內部名稱很有用 (像是對 frobber.h 中的程式使用 websearch::index::frobber_internal)。