一、命名空間
1.引入
在C++中,變量、函數(shù)和類都是大量存在的,這些變量、函數(shù)和類的名稱將都存在于全局命名空間中,會導(dǎo)致很多沖突, 使用命名空間的目的是對標(biāo)識符的名稱進行本地化,以避免命名沖突或名字污染,Namespace關(guān)鍵字的出現(xiàn)就是針對這種問題的。
2.定義
(1)命名空間的定義
(2)相同的命名空間可以分割在不同的文件中,編譯器最后都會合成在同一個命名空間下
(3)命名空間可以嵌套
(4)沒有名稱的命名空間(該命名空間的內(nèi)容相當(dāng)于全局變量)
說明:
(1)從本質(zhì)上講,一個命名空間就定義了一個范圍,在命名空間中定義的任何東西都局限于該命名空間中。
(2)沒有名稱的命名空間可以只創(chuàng)建在聲明它的文件才可見的標(biāo)識符。(只有在聲明這個命名空間的文件中,它的成員才是可見的,它的成員可以被直接訪問,不需要命名空間名稱來修飾。對于其它文件,該命名空間是不可見的)。
(3)把全局名稱的作用域限制在聲明他的文件中的一種方式就是把它的聲明為靜態(tài)的,盡管C++支持全局靜態(tài),但最好的方式還是使用未命名的空間。
3.使用方式
(1)命名空間內(nèi)直接使用
(2)命名空間名稱限制
(3)導(dǎo)入命名空間
(4)使用誰引入誰
-
函數(shù)
+關(guān)注
關(guān)注
3文章
4381瀏覽量
64876 -
C++
+關(guān)注
關(guān)注
22文章
2119瀏覽量
75313 -
變量
+關(guān)注
關(guān)注
0文章
614瀏覽量
28954
發(fā)布評論請先 登錄
深入C++內(nèi)存管理
一文初識C++


C++筆記003:C++從一個小程序開始
C++筆記008:C++命名空間 namespace的作用和使用解析
命名空間的實現(xiàn)
python常規(guī)包與命名空間包
C++中命名空間的幾大用法
C++程序設(shè)計教程之C++工具的詳細(xì)資料說明

C++程序設(shè)計的基礎(chǔ)知識初步了解C++的資料免費下載

C++項目常見的命名規(guī)范
C++入坑指南
C++簡史:C++是如何開始的

評論