命名空間(namespace)是比較新的C++特性,主要用于避免命名沖突并組織代碼結構。在使用命名空間時,可以將一系列相關的變量、函數或類封裝在一個命名空間中,以便在不同的地方使用時,可以避免與其他的同名變量、函數或類發生沖突。
直接聲明變量、函數或類時,它們沒有特定的命名空間,這意味著它們會在全局命名空間中定義。這樣可能會導致命名沖突,因為其他代碼中可能也會定義同名的變量、函數或類,從而導致編譯錯誤或意想不到的行為。
因此,使用命名空間可以更好地組織代碼,并避免命名沖突,提高代碼的可維護性和可讀性。通過使用命名空間,可以將相關的實體組織到一起,并在需要時更容易地引用它們。